mirror of
https://github.com/PDP-10/its.git
synced 2026-01-11 23:53:12 +00:00
Block loader for TT2500.
The 2500 bootstrap ROM expects to receive a block loader first, which will run and recieve the actual payload which is the microcode and font data divided into blocks.
This commit is contained in:
parent
8ba88ad174
commit
96fccc355a
2
Makefile
2
Makefile
@ -29,7 +29,7 @@ SRC = syseng sysen1 sysen2 sysen3 sysnet kshack dragon channa \
|
||||
moon teach ken lmio1 llogo a2deh chsgtv clib sys3 lmio turnip \
|
||||
mits_s rab stan_k bs cstacy kp dcp2 -pics- victor imlac rjl mb bh \
|
||||
lars drnil radia gjd maint bolio cent shrdlu vis cbf digest prs jsf \
|
||||
decus bsg muds54 hello rrs 2500 minsky
|
||||
decus bsg muds54 hello rrs 2500 minsky danny
|
||||
DOC = info _info_ sysdoc sysnet syshst kshack _teco_ emacs emacs1 c kcc \
|
||||
chprog sail draw wl pc tj6 share _glpr_ _xgpr_ inquir mudman system \
|
||||
xfont maxout ucode moon acount alan channa fonts games graphs humor \
|
||||
|
||||
@ -189,6 +189,7 @@ c/yginst.teco 197403210837.21
|
||||
c/yinstl.teco 197402211935.24
|
||||
c/yparse.c 198207150348.20
|
||||
danny/2500.20 197511260345.00
|
||||
danny/loader.24 197512170907.51
|
||||
das/mstuff.21 198107161853.25
|
||||
datdrw/ndips.dip 198312072218.23
|
||||
dcp2/babel.2 198302030430.46
|
||||
|
||||
74
src/danny/loader.24
Normal file
74
src/danny/loader.24
Normal file
@ -0,0 +1,74 @@
|
||||
(SETQ LOADER '(
|
||||
|
||||
(CALL 0 WD)
|
||||
(CALL 1 ADR)
|
||||
(CALL 2 CNT)
|
||||
(CALL 3 CHK)
|
||||
(CALL 4 TYP)
|
||||
(CALL 124 OK-CHR)
|
||||
(CALL 106 LOOSE-CHR)
|
||||
|
||||
START (GET WD IN & RESET TTY)
|
||||
(SUB WD WD)
|
||||
WAIT-FLAG (PUSHJ CHR-IN)
|
||||
(GET WD WD & TO SEE IT)
|
||||
(BMC WAIT-FLAG & WAIT FOR FLAG)
|
||||
(SUB CHK CHK)
|
||||
(PUSHJ GET-WD)
|
||||
(GET TYP WD)
|
||||
(BEQ EXECUTE & TYPE 0 IS EXECUTE)
|
||||
(PUSHJ GET-WD)
|
||||
(GET ADR WD & START ADDRESS)
|
||||
(GET XR ADR)
|
||||
(PUSHJ GET-WD)
|
||||
(GET CNT WD & NUMBER OF WORDS)
|
||||
(DEC TYP)
|
||||
(BEQ CRM-LOOP & TYPE 1 IS LOAD CRM)
|
||||
(DEC TYP)
|
||||
(BEQ MEM-LOOP & TYPE 2 IS LOAD MEM)
|
||||
(JUMP LOOSE)
|
||||
MEM-LOOP (PUSHJ GET-WD)
|
||||
(IWRITE ADR WD)
|
||||
(DEC CNT)
|
||||
(BPL CRM-LOOP)
|
||||
(JUMP END)
|
||||
EXECUTE (PUSHJ GET-WD)
|
||||
(LOD 7)
|
||||
(JUMP-PLACE)
|
||||
(GET XR 7)
|
||||
(LCM WD)
|
||||
JUMP-PLACE (0 & WORD TO BE EXECUTED IS PUT HERE)
|
||||
(JUMP END)
|
||||
CRM-LOOP (PUSHJ GET-WD)
|
||||
(LCM WD)
|
||||
(DEC CNT)
|
||||
(BPL CRM-LOOP)
|
||||
END (PUSHJ GET-WD)
|
||||
(GET CHK CHK & LOOK AT CHECK SUM)
|
||||
(BNE LOOSE)
|
||||
(LOD 7)
|
||||
(OK-CHR)
|
||||
CONFIRM (PUT 7 UART)
|
||||
(NOP 7 & UARTS ARE SLOW)
|
||||
(NOP 7 & VERY SLOW)
|
||||
(JUMP START)
|
||||
GET-WD (PUSHJ CHR-IN)
|
||||
(PUSHJ CHR-IN)
|
||||
(PUSHJ CHR-IN)
|
||||
(PUSHJ CHR-IN)
|
||||
(ADD CHK WD)
|
||||
(POPJ)
|
||||
CHR-IN (DIS INT2 1 0)
|
||||
(JUMP CHR-IN)
|
||||
(GET 5 IN)
|
||||
(ANDI WD WD )
|
||||
(7777)
|
||||
(ROT WD WD 14)
|
||||
(ANDI 5 5 )
|
||||
(17)
|
||||
(IOR WD 5)
|
||||
(POPJ)
|
||||
LOOSE (LOD 7)
|
||||
(LOOSE-CHR)
|
||||
(JUMP CONFIRM)
|
||||
))
|
||||
Loading…
x
Reference in New Issue
Block a user