; OCTAPUS-E for HP-IPL/OS - 32K version ; Defines OE OE? SYSALL 1/1/04 ; modified SYSALL 4/8/06 to add header ; modified 9/29/07 to fix control-S search typo/bug ;---------------------------------------------- "Loading OE and OE?" $PRINT CRLF OCTAL DEFINE OE 70000 RUN END DEFINE OE? 70001 RUN END ;---------------------------------------------- "Loading SYSALL" $PRINT CRLF ; "SYSALL" - output combined image containing ; HPIPLOS, OCTAPUS and OCTAPUS HELP to MS out OCTAL DEFINE SYSALL 10 ;number of leader zero bytes, poke here to change DO ;write papertape leader... DUP IFNZ DEC #0 MSBOUT ENDIF DUP WHILE DROP "Writing" $PRINT ;writes dots after for each 1KW block 2000 DO ;start looping w/ 2000 on the stack DUP DUP 1777 ADD ;push addr,addr+1777 DUP EOD SUB ;push (addr+1777)-eod IF<0 ;if negative, not at end yet ABSOUT ; do 1KW block 2000 ADD ; add 2000 to pointer #0 ;keep looping ELSE DROP EOD ABSOUT ;write remaining 1KW DROP #1 ;drop pointer and stop looping ENDIF 56 PCHR ;write dot UNTIL ;done 2 1777 ABSOUT 56 PCHR ;save 2-1777 70000 72377 ABSOUT ;save octapus-E PTZERO ;write trailer END ;----------------------------------------------- "Decoding 32K OCTAPUS-E binary (70000-72352)" $PRINT CRLF OCTAL DEFINE D ;encoder $LEN 3 DIV DUP S>Z DEC #0 SWAP +DO $HEAD 74 SUB $HEAD 74 SUB 100 MUL ADD $HEAD 74 SUB 10000 MUL ADD OVER INDEX ADD SWAP PUT +LOOP $DROP Z>S ADD END 070000 "?l>>lFWMC@r=HXB@yBvq==QDvW==RD@r=RXBnq=xl=Fl>HXB=yBvq=Eq=lXC" D "tl=lXBqp=Wm=
uWAjq>zWANl>BXAol>AXAhl>MX=bxB" D
"Nk<=Eq=_XA=L JxBNK <<uWAVq>gZAOr>hxB" D
"Ok