P21 Boot Help
- To: MISC
- Subject: P21 Boot Help
- From: lowry@xxxxxxxxxxxxxxxxx (Dave Lowry)
- Date: Wed, 9 Apr 1997 10:35:00 -0700
- Old-Date: Wed, 9 Apr 97 12:31:05 CDT
- Posted-Date: Wed, 9 Apr 97 12:31:05 CDT
- ReSent-Date: Thu, 10 Apr 1997 04:21:04 -0400 (EDT)
- ReSent-From: Penio Penev <penev@xxxxxxx>
- ReSent-Message-ID: <Pine.SGI.3.96.970410042104.21718F@venezia.rockefeller.edu>
- ReSent-To: MISC
MISC Readers-
I've been going through the ROM from Ting's '21H kit, trying to understand
how P21 boots.
There is a chunk of 8 bit code that builds the following 20 bit code into
the first 16 words of DRAM:
( byte )
2* 2* 2* 2*
2* 2* 2* #
( ff )
@+ and xor ;
( word' )
a push nop a!
@+ 2* nop nop
call byte
2* call byte
a pop nop a!
push !+ pop ;
( boot )
# com # nop
( a8030 -# )
( 800 )
( begin ) push call word'
pop # nop nop
( 80 )
( MISSING: + -until )
Then the 8 bit code does a ; to boot. Now, here's where it gets tricky.
Per the OK listings, boot ends with a "+ -until" which branches back
to "push call word'". But, the 8 bit code doesn't build that into DRAM.
So, where does it come from?
Is the "+ -until" the first instruction fetched by boot from ROM into
DRAM?
And, what's the deal with the a8030 that's stored by -# and then complemented?
Is that to get a 1 in the carry bit to address SRAM?
Thanks.
-Dave