1
0
mirror of https://github.com/rzzzwilson/pymlac.git synced 2025-06-10 09:32:41 +00:00

Added new file and README

This commit is contained in:
Ross Wilson
2016-03-13 11:11:33 +07:00
parent 5c36bb17ed
commit 3f2114171f
2 changed files with 57 additions and 0 deletions

11
boot_block/README Normal file
View File

@@ -0,0 +1,11 @@
The files here are 'production' versions of system code:
bootstrap_tty.asm
The TTY bootstrap ROM code created from the data in file
images/imlacdocs/loading.pdf.
blockloader_c8lds_ptr_tty.asm
The blockloader for c8lds format files found in iasm/chars.ptp.
blockloader_lc16sd_tty.asm
The blockloader for lc16sd format files found in bin/munch.ptp.

View File

@@ -0,0 +1,46 @@
;------------------------
; TTY bootstrap code from images/imlacdocs/loading.pdf
;------------------------
;
bladdr equ 037700 ; address of top mem minus 0100
blsize equ 0100 ; size of blockloader code
;
ORG 040 ;
;
LAC staddr ;
DAC 010 ; 010 points to loading word
LWC blsize-2;
DAC 020 ; 020 is ISZ counter of loader size
; skip all bytes until the expected byte
skpzer RCF ;
CAL ;
RSF ; wait for next byte
JMP .-1 ;
RRB ; get next TTY byte
SAM fbyte ; wait until it's the expected byte
JMP skpzer ;
nxtwrd RSF ; wait until TTY byte ready
JMP .-1 ;
RRC ; get high byte and clear flag
RAL 3 ; shift into AC high byte
RAL 3 ;
RAL 2 ;
RSF ; wait until next TTY byte
JMP .-1 ;
RRC ; get low byte and clear flag
DAC *010 ; store word
CAL ; clear AC ready for next word
ISZ 020 ; finished?
JMP nxtwrd ; jump if not
JMP *blstrt ; else execute the blockloader
;
DATA 000000 ; empty space?
DATA 000000 ;
DATA 000000 ;
DATA 000000 ;
;
fbyte DATA 000002 ; expected first byte of block loader
blstrt data bladdr ; start of blockloader code
staddr data bladdr-1; ISZ counter for blockloader size
;
END ;