TuxScreen on SourceForge TuxScreen CVS search the Wiki
Browsing -> Wiki -> Main -> [InfernoRemote]
edit, info, topics, orphans, hubs and nodes, or recent changes in the Wiki create a new user or login

Steps to get there:

DL the free version of Inferno from:


TimRiker had to grab a replacement emu from http://www.vitanuova.com/test/linuxemu.gz as he had an old version of the emu. The current DL version should support win32 and Linux 2.2 and 2.4 kernels. Latest is that this still does not work and the above link is broken. TimRiker uploads the emu update here: http://www.TuxScreen.net/download/inferno/linuxemu.gz

JCWren would like to confirm what constitutes an "old version" of 'emu' at this point. The date in the download from Vitanuova on 2002/10/20 when 'emu' is started is '18 Jun 2001'. The version in the download from TimRiker's link is '19 Apr 2001'. Has Vitanuova updated inferno, and TimRiker's link no longer necessary?

CarlWorth adds: the linuxemu file that TimRiker provides above is not a replacement for the Linux.tgz file from vitanuova. Rather, you should copy it into the place of the Linux/386/bin/emu file provided by Linux.tgz. Note that you will want to unzip it and make it executable.

KenRestivo adds: Yes, you not only need to copy linuxemu as a replacement for the ./Linux/386/bin/emu that vitanuova's Linux.tgz leaves in your installation directory-- in order to get the installer to run at all--, but you ALSO neeed to again copy the same linuxemu on top of the Linux/386/bin/emu in the target directory, once the installer is finished. In other words, the installer doesn't just copy the new emu into the target directory, it instead installs an old one and you need to update it manually. Otherwise you will get SIGSEGV's whenever you try to run emu. Please don't ask me how long it took me to figure this out ;-)

Install Inferno. Hookup a null modem cable. Start Inferno and type:

; bind -a '#t' /dev ; rdp -s115200 -r -p/dev/eia0

for 9600 baud, it would be:

; bind -a '#t' /dev ; rdp -s9600 -r -p/dev/eia0

if you are using /dev/ttyS1 change eia0 to eia1 and so forth.

SimonLabrecque adds: if you have problem connecting to the TuxScreen, try omitting the baudrate (-s#) setting on the 'rdp' command.

SquarT adds: At first I was under the impression nothing happend after a reboot, but it just takes a while to make a connection, so be patient. I had a few succesfull connections with 115200 baud, but after a few times it got stuck during the boot on:

sboot jumpstart vector: 0x40

After that I used 57600 and that worked perfectly.

JordoCrouse says: You must have read write access on the serial ports for the bind to work. Being root is not the solution, because the Inferno cannot write saved images to the local drive as root. The best solution is to make a group that has full permission on the serial ports, and then use that group.

Then reset the phone. Hit ESC at the fading screen, then ctrl-a. Not ctrl-p, which is sboot on the console.

JasonDearing asks: After resetting, what is the difference between hitting ctrl-A and just hitting - in the new boot loader?

Thanx to a former Shannon team member for needed bits of this procedure!

timr@localhost:~/shannon/inferno$ ./inferno 
Inferno Third Edition (19 Apr 2001) main (pid=575) interp
Initialize Dis: /dis/emuinit.dis
; bind -a '#t' /dev
; rdp -s9600 -r
rdp 0.17 (port=/dev/eia0, bps=9600)
<sending reset>
DECa119, shanmon v1.13-a (103 MHz)
DRAM: 0x1000000 (16MB), Little endian
Flags: 0x3 0x1
GPLR: 0xfce28e3, GPDR: 0x4403fc, GAFR: 0x0, GEDR: 0x0
ICIP: 0x0, ICMR: 0x0, ICLR: 0x0, ICFP: 0x0, ICPR: 0xc0000000
R11= 0x5, R12= 0x1b3ac
R13_svc= 0xa00, PC/R14_svc= 0xe59ffa38, CPSR/SPSR_svc= 0x600000d3
R13_irq= 0x500, R14_irq= 0x80000093, SPSR_irq= 0x80000010
R13_abt= 0x800, R14_abt= 0x9a366246, SPSR_abt= 0x80000010
R13_und= 0x700, R14_und= 0x20000093, SPSR_und= 0x80000010
MMU enabled, ICache/DCache/WriteBuffer disabled. Inferno Enabled.    
sboot jumpstart vector: 0x40

<contact has been made>
<execute at 40>
640x480x8: hz=81 f=6122
  p=10fa4d00 u=10fa4f00 l=10fca700
  pclk=4724082 clockdiv=8

sboot v0.71 (shannon)
 - Inferno StrongARM Bootstrap Loader

flash: id=1/49 (AMD Am29LV160BB), ss=20000 fs=400000 w=2 b=0-20000 f=5
>>> ?
. (  1-  1, 00014e0c) source
4 (  0-  0, 0000b9f0) hzcount
6 (  0-  1, 000149a8) palette
< (  1-  1, 0000b920) input redir
= (  0-  0, 00013cfc) env
> (  1-  1, 0000b96c) output redir
? (  0-  1, 00013d68) help
A (  0-  0, 000098c0) autoboot
B (  0-  0, 00014d90) bootparam
D (  2-255, 000148bc) deposit
E (  1-  2, 000148fc) examine
M (  0-  1, 0000bc30) memtest
P (  0-  6, 0000fcd8) ptab mgmt
S (  1-  1, 00014808) stat
T (  0-  1, 00014d60) title
V (  0-  1, 00014960) va->pa
W (  1-  1, 0000b9b8) watchdog
b (  0-255, 0001419c) boot
c (  2-  2, 00013f94) copy
d (  2-255, 00014768) deposit
e (  1-  1, 00014378) examine
m (  1-  1, 00014d3c) msec
p (  0-255, 00014dac) print
r (  0-  1, 0000b8f0) reset
s (  1-  1, 00014880) start @
t (  0-  2, 0000bc04) touchtest
>>> P
flash: id=1/49 (AMD Am29LV160BB), ss=20000 fs=400000 w=2 b=0-20000 f=5
dev__ ____base ____size perm flgs name________________ (max=16 boot=c000)
F!-2:     3e00      200  644    0 partition
F!-1:        0   400000  644    0 all
F!0 :        0     4000  444    0 demon
F!1 :     4000     3c00  444    0 logo
F!2 :     7c00      400  644    0 config
F!3 :     8000     1000  644    0 plan9.ini
F!4 :     9000     1000  644    0 spare1
F!5 :     a000     2000  644    0 spare2
F!6 :     c000    14000  444    0 sboot
F!7 :    20000    c0000  444    0 kern1
F!8 :    e0000    c0000  644    0 kern2
F!9 :   1a0000   260000  666    0 fs

To copy over a file from the local system you could type:

c D!inferno.img F!all

for example to copy blob over:

c D!blob F!all

Note: *This is a one way trip*, if you install a bad image into F!all then your only recovery is by soldering in JTAG on the board.

SourceForge Content of these pages are owned and copyrighted by the poster. SourceForge