From f79066ccb8df7e3f78a43ad5e3ac676358b45f2a Mon Sep 17 00:00:00 2001 From: Lars Brinkhoff Date: Tue, 4 Jun 2019 11:40:10 +0200 Subject: [PATCH] TST342 - display all Type 342 characters. This will run on a PDP-6 or 10 on ITS or out of timesharing. --- Makefile | 2 +- build/misc.tcl | 4 +++ doc/programs.md | 1 + src/maint/tst342.108 | 80 ++++++++++++++++++++++++++++++++++++++++++++ 4 files changed, 86 insertions(+), 1 deletion(-) create mode 100644 src/maint/tst342.108 diff --git a/Makefile b/Makefile index ff933d1f..59f44b22 100644 --- a/Makefile +++ b/Makefile @@ -28,7 +28,7 @@ SRC = syseng sysen1 sysen2 sysen3 sysnet kshack dragon channa \ fonts zork 11logo kmp info aplogo bkph bbn pdp11 chsncp sca music1 \ 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 + lars drnil radia gjd maint 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 \ diff --git a/build/misc.tcl b/build/misc.tcl index d583cf95..8743bbad 100644 --- a/build/misc.tcl +++ b/build/misc.tcl @@ -1115,6 +1115,10 @@ respond "*" ":link sys3;ts unscr,sys3;ts scrmbl\r" respond "*" ":midas;324 sys;ts 10run_sysen2; 10run\r" expect ":KILL" +# Display all Type 342 characters. +respond "*" ":midas dsk0:maint;_tst342\r" +expect ":KILL" + # KL10 microcode assembler respond "*" ":midas sysbin;_syseng;micro\r" expect ":KILL" diff --git a/doc/programs.md b/doc/programs.md index d268c99e..36c06232 100644 --- a/doc/programs.md +++ b/doc/programs.md @@ -325,6 +325,7 @@ - TREK, Star Trek game. - TORTIS, toddler's own recursive turtle interpreter system. - TOSBLK, convert PALX binaries to SBLK. +- TST342, display all Type 342 characters. - TV-11, Knight TV PDP-11. - TVEDIT, paint program. - TVREAD, read a bitmap file and display on TV. diff --git a/src/maint/tst342.108 b/src/maint/tst342.108 new file mode 100644 index 00000000..a00d5fb7 --- /dev/null +++ b/src/maint/tst342.108 @@ -0,0 +1,80 @@ + TITLE TST342 - Type 342 character set test. + +;Test all known Type 342 character codes. +;Runs on ITS and out of timesharing. +;Works on both PDP-6 and PDP-10. + +A=1 +BLKOP=16 + +APR==0 +PI==4 +DIS==130 +DISCHN==1 + +LOC 41 + JRST NTS + +LOC 40+2*DISCHN + BLKO DIS,BLKOP + JSR RECYC + +LOC 100 +START: .DSTART [-DLEN,,DLIST-1] ;Go through 41 if not timesharing. + JFCL + .HANG ;Hang here forever. + +NTS: CONO APR,675550 ;Reset processor. + CONO PI,10400 ;Reset and deactivate PI. + JSR RECYC ;Reset and start display. + CONO PI,2200+<200_-DISCHN> ;Activate PI and turn on channel. + JRST . + +RECYC: 0 + MOVE BLKOP,[-DLEN,,DLIST-1] ;Reset BLKO pointer. + CONO DIS,100+DISCHN ;Reset 340, assign channel. + JRST 12,@RECYC + +POINT==020000 +CHARA==060000 +VERTI==200000 + + .BYTE 18. +DLIST: POINT+<5_4>+17 ;Set intensity and scaling. + POINT+0. ;Set horizontal position. + CHARA+VERTI+1000. ;Set vertical position. + + ;Shift in character set. + .BYTE 6 + REPEAT 20,.RPCNT ;0-17: Blob, ABCDEFGHIJKLMNO. + 34 ? 33 ;CR LF + REPEAT 33-20,20+.RPCNT ;20-32: PQRSTUVWXYZ. + 34 ? 33 ;CR LF + REPEAT 60-40,40+.RPCNT ;40-57: Space, !"#$%&'()*+,-./. + 34 ? 33 ;CR LF + REPEAT 100-60,60+.RPCNT ;60-77: 0123456789:;<=>?. + 34 ? 33 ;CR LF + + ;Shift out character set. + 36 ;Shift out. + REPEAT 20,.RPCNT ;0-17: ?abcdefghijklmno. + 34 ? 33 ;CR LF. + REPEAT 33-20,20+.RPCNT ;20-32: pqrstuvwxyz. + 34 ? 33 ;CR LF + REPEAT 20,40+.RPCNT ;40-57: Space, ??~??, arrows, \[]{}?. + 34 ? 33 ;CR LF + REPEAT 66-60,60+.RPCNT ;60-65: _??|???. + 40 ? 66 ;66: overstriking `. + 40 ? 67 ;67: overstriking ^. + 70 ? 71 ;70-71: ?, cursor? + 34 ? 33 ;CR LF + 43 ? 72 ? 60 ;72: backspace. + 73 ? 1 ? 77 ? 2 ;73, 77: subscript and superscript. + 77 ? 3 ? 73 ? 4 + ;74-76: unknown. + 40 ? 40 ;Padding. + .BYTE + +DLEN==.-DLIST + +END START