<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://elinux.org/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://elinux.org/index.php?title=JuiceBox_Emulator&amp;feed=atom&amp;action=history</id>
		<title>JuiceBox Emulator - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://elinux.org/index.php?title=JuiceBox_Emulator&amp;feed=atom&amp;action=history"/>
		<link rel="alternate" type="text/html" href="http://elinux.org/index.php?title=JuiceBox_Emulator&amp;action=history"/>
		<updated>2013-05-26T08:34:41Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.22alpha</generator>

	<entry>
		<id>http://elinux.org/index.php?title=JuiceBox_Emulator&amp;diff=3776&amp;oldid=prev</id>
		<title>Chris at 09:03, 14 July 2007</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/index.php?title=JuiceBox_Emulator&amp;diff=3776&amp;oldid=prev"/>
				<updated>2007-07-14T09:03:50Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class='diff diff-contentalign-left'&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
				&lt;col class='diff-marker' /&gt;
				&lt;col class='diff-content' /&gt;
			&lt;tr style='vertical-align: top;'&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
			&lt;td colspan='2' style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 09:03, 14 July 2007&lt;/td&gt;
			&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 58:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 58:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{myfirstname}@bradgoodman.com&lt;/div&gt;&lt;/td&gt;&lt;td class='diff-marker'&gt;&amp;#160;&lt;/td&gt;&lt;td style=&quot;background-color: #f9f9f9; color: #333333; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #e6e6e6; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;{myfirstname}@bradgoodman.com&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot;&gt;&amp;#160;&lt;/td&gt;&lt;td class='diff-marker'&gt;+&lt;/td&gt;&lt;td style=&quot;color:black; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;[[Category:JuiceBox]]&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;

&lt;!-- diff cache key elinux:diff:version:1.11a:oldid:2216:newid:3776 --&gt;
&lt;/table&gt;</summary>
		<author><name>Chris</name></author>	</entry>

	<entry>
		<id>http://elinux.org/index.php?title=JuiceBox_Emulator&amp;diff=2216&amp;oldid=prev</id>
		<title>RBot: Bot (Edward's framework)</title>
		<link rel="alternate" type="text/html" href="http://elinux.org/index.php?title=JuiceBox_Emulator&amp;diff=2216&amp;oldid=prev"/>
				<updated>2007-03-07T03:32:33Z</updated>
		
		<summary type="html">&lt;p&gt;Bot (Edward&amp;#039;s framework)&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Skyeye is an open-source ARM emulator with a GDB stub, allowing you to use GDB to debug code running within the emulator.&lt;br /&gt;
&lt;br /&gt;
Skyeye can be obtained at: [http://gro.clinux.org/projects/skyeye/ gro.clinux.org/projects/skyeye/]&lt;br /&gt;
&lt;br /&gt;
All files are at: http://www.bradgoodman.com/skyeye The patch for skyeye-v1 is here: http://www.bradgoodman.com/skyeye/bkg_skyeye.patch (It's a little messy - i.e. adding a bunch of lines that are commented out - but I'll clean it up later.) The patch fixes a few things:&lt;br /&gt;
&lt;br /&gt;
## Allows halfword and word read to 32-bit I/O ports via GDB (instead of 4 individual byte reads - which are not the same thing)&lt;br /&gt;
## Fixes in UART FIFO status registers which were not implemented and would break Linux S3C44B0X serial driver.&lt;br /&gt;
## Internal Interrupt status bits were not actually updated when things like the interrupt mask registers were modified - breaking interrupt suport.&lt;br /&gt;
My skyeye.conf file is here: http://www.bradgoodman.com/skyeye/skyeye.conf Note the memory images:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
mem_bank: map=M, type=RW, addr=0x00000000, size=0x00400000, file=newboot.rom&lt;br /&gt;
mem_bank: map=I, type=RW, addr=0x01c00000, size=0x00400000    mem_bank: map=M, type=RW, addr=0x0c000000, size=0x00400000, file=./linux&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
The file &amp;quot;newboot.rom&amp;quot; is a slightly modified version of the [[JuiceBox]] ROM file from emsoft's web site (boot.rom). It is actually importiant to have this loaded, because the ARM boot and (more important) interrupt vectors are down in this area (0x000000) - and point up to your installed kernel - the &amp;quot;./linux&amp;quot; file at 0xc000000.&lt;br /&gt;
&lt;br /&gt;
(My linux and newboot.rom are included)&lt;br /&gt;
&lt;br /&gt;
The Linux kernel I built was also from emsoft's web site - using the arm-elf-tools-20030314.sh toolchain to build it.&lt;br /&gt;
&lt;br /&gt;
Also, the [[RAMdisk]] is in this image too - a ROMFS filesystem at address 0x100000 (0x10000 offset in this ROM file.)&lt;br /&gt;
&lt;br /&gt;
The &amp;quot;slight modification&amp;quot; to the boot.rom is in the /etc/rc file in the [[RAMdisk]]. I added a command here to launch a shell /bin/sh:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    /bin/sh &amp;lt; /dev/ttyS0 &amp;gt; /dev/ttyS0&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
To modify the ROMFS filesystem within the ROM image, you need to do a couple things:&lt;br /&gt;
&lt;br /&gt;
# Get genromfs off of [[Source Forge]]&lt;br /&gt;
&lt;br /&gt;
2. Yank the ROMFS image out of the boot.rom. Remember, this starts at offset 0x100000 from the file - so you can do this with:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    dd if=boot.rom of=romfs.img bs=1024 skip=1024&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
(Note: For all you Dee-Dee-Dee types, 1024*1024=0x100000)&lt;br /&gt;
&lt;br /&gt;
3. Mount the ROMFS filesytem: mount -t romfs romfs.img /mnt&lt;br /&gt;
&lt;br /&gt;
4. Make your modifications to the filesytem, then use genfromfs to re-create it.&lt;br /&gt;
&lt;br /&gt;
'''NOTE'''when you unpackage the ROMFS filesystem, all of the links become &amp;quot;normal&amp;quot; files. Since most of the stuff in the /bin directory (and maybe /sbin?) are links to /bin/busybox - this will make it a whopping 16M ROMFS image. To fix this, you're going to want to copy the old filesystem image (cp -ax /mnt /newdir). Then, find all the files in the /bin directory which as the same size as /bin/busybox, delete them, and make them symlinks to busybox. Then use *this* directory to rom genromfs on.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
genromfs -a 16 -f newimage.img -d /newdir&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
5. Then put this image back into the ROM - copying it back to the 0x100000 offset of the file:&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
    dd if=newimage.img of=newboot.rom bs=1024 seek=1024&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{myfirstname}@bradgoodman.com&lt;/div&gt;</summary>
		<author><name>RBot</name></author>	</entry>

	</feed>