📄 mtboot.s
字号:
/ tape boot program to load and transfer/ the next item on the tape./ entry is made by jsr pc,*$0/ so return can be rts pccore = 24.halt=0.. = [core*2048.]-512.start: mov $..,sp mov sp,r1 cmp pc,r1 bhis 2f clr r0 cmp (r0),$407 bne 1f mov $20,r01: mov (r0)+,(r1)+ cmp r1,$core*2048. blo 1b jmp (sp)2: mov $1f,*$4 mov $340,*$6 tst *$htcs1 mov $htrew,rew mov $htread,tread br 2f1: mov $tmread,tread mov $tmrew,rew2: jsr pc,*rew mov $2,tapa mov $-256.,wc jsr pc,*tread mov *$2,r0 add *$4,r0 sub $512.,r0 asr r0 neg r0 bge 1f mov r0,wc mov $3,tapa mov $512.,ba jsr pc,*tread1: jsr pc,*rew clr r0 mov $20,r1 mov sp,r4 clc ror r41: mov (r1)+,(r0)+ sob r4,1b jsr pc,*$0 br .htcs1 = 172440htba = 172444htfc = 172446htcs2 = 172450htds = 172452httc = 172472P800 = 1300P1600 = 2300PIP = 20000RESET = 40MOL = 10000ERR = 40000REV = 33READ = 71REW = 7htread:1: mov ba,mtma cmp mtapa,tapa beq 1f bhi 2f jsr pc,hrrec br 1b2: jsr pc,htrew br 1b1: mov wc,r11: jsr pc,hrrec add $256.,r1 bmi 1b rts pchrrec: mov $htds,r0 tstb (r0) bpl hrrec bit $PIP,(r0) bne hrrec bit $MOL,(r0) beq hrrec mov $htfc,r0 mov $-512.,(r0) mov mtma,-(r0) mov $-256.,-(r0) mov $READ,-(r0)1: tstb (r0) bpl 1b bit $ERR,(r0) bpl 1f mov $RESET,*$htcs2 mov $-1,*$htfc mov $REV,(r0) br hrrec1: add $512.,mtma inc mtapa rts pchtrew: mov $RESET,*$htcs2 mov $P800,*$httc mov $REW,*$htcs1 clr mtapa rts pcmts = 172520mtc = 172522mtbrc = 172524mtcma = 172526tmread:1: mov ba,mtma cmp mtapa,tapa beq 1f bhi 2f jsr pc,tmrrec br 1b2: jsr pc,tmrew br 1b1: mov wc,r11: jsr pc,tmrrec add $256.,r1 bmi 1b rts pctmrrec: mov $mts,r0 bit $2,(r0)+ / rewind status bne tmrrec tstb (r0)+ / cu ready bpl tmrrec inc r0 mov $-512.,(r0)+ / byte count mov mtma,(r0) / bus address mov $mtc,r0 mov $60003,(r0) / read 800bpi1: tstb (r0) bpl 1b tst (r0)+ bpl 1f mov $-1,(r0) mov $60013,-(r0) / backspace br tmrrec1: add $512.,mtma inc mtapa rts pctmrew: mov $60017,*$mtc clr mtapa rts pcmtapa: 0mtma: 0tapa: 0wc: 0ba: 0rew: 0tread: 0
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -