;special Didaktik org 43252 START defs 3 AUTOCALL defs 3 HL_ADDR defs 3 HL_PEEK defs 3 CONVTAB org 42031 put 60000 PRINT9P defm "UTILC" defw A0PTOEND-PRINT9P PTO0 ld (AGAIN+1),sp AGAIN ld sp,0 INIT ld a,138 call SENDOUT ld b,6 ld hl,MTS INTERFAC call A_OUTTST djnz INTERFAC call AUTOCALL defb 42+128 defw #2040,16384 defw 16384+96+25+1280 defw 16384+160+25+1536 nop defw PTOT ld a,(PTOMODE+1) ld (iy-5),a PTO2 call INPUTS PTOTAB defb 161,4,#A defw BEGTX defb 165,4,#2A defw ENDTX defb 170,2,#52 defw LNSTX defb 173,2,#6A defw TPPTX defb 176,2,#82 defw FSTTX defb 178,2,#92 defw LSTTX defb 181,1,#AA defw KVTTX defb 183,1,#BA defw WDTTX nop PTO1 call AUTOCALL defb 46+128 defw 16384+1+64+768 defb -5,1 defw 16384+5+64+768 defb -5,2 defw 16384+9+64+768 defb -5,4 defw 16384+15+64+768 defb -5,8 defw 16384+19+64+768 defb -5,16 defw 16384+23+64+768 defb -5,32 defw 16384+27+64+768 defb -5,64 nop call AUTOCALL defb 45+128 defb 0,63,0,255 cp 29 jr nc,PTO3 ld a,l ld bc,#FF80 ld hl,MODETAB PTO5 inc b rlc c cp (hl) inc hl jr z,PTO4 jr nc,PTO5 PTO4 ld (iy-5),c ld (PTOMODE+1),bc jp PTO1 PTO3 ld a,l cp 196 jr c,PTO6 halt res 5,(iy+1) ld a,h cp 44 ret c ld bc,0 call AUTOCALL defb 61+128 ld a,h or l jr nz,PTOPRINT ret PTO6 ld de,PTOTAB-5 ld bc,5 ld hl,INPUTAB PTO7 ex de,hl add hl,bc ex de,hl cp (hl) inc hl jr z,PTO8 jr nc,PTO7 PTO8 ex de,hl inc hl ld a,(hl) ld (PTOEDIW),a inc hl ld a,(hl) sub 2 ld (PTOEDIL),a inc hl ld c,(hl) inc hl ld b,(hl) ld (PTOEDIP),bc PTOB call AUTOCALL defb 8+128 PTOEDIW defb #1 PTOEDIP defw WDTTX,PTOE PTOEDIL defw #2850 ld a,(PTOEDIW) dec a jp nz,PTO2 ex de,hl call AUTOCALL defb 35+128 ld a,h or l jp nz,PTO2 call AUTOCALL defb 41+128 jr PTOB PTOPRINT ld hl,WDTTX call AUTOCALL defb 13+128 cp 4 jr c,PTOY ld a,4 PTOY ld c,a ld b,a ld e,128 PTPH rlc e djnz PTPH ld a,e ld (PTPMULT2+1),a ld b,c ld a,(PTOMODE+2) ld e,a add a,a add a,a add a,e ld e,a ld d,0 ld hl,PMODETAB add hl,de ld (OLEPR+1),hl inc hl inc hl inc hl ld e,(hl) inc hl ld d,(hl) PTOX dec c jr z,PTOZ srl d rr e jr PTOX PTOZ ld (PTOAW+1),de ld hl,KVTTX call AUTOCALL defb 13+128 ld (PTPREP+1),a ld hl,LNSTX call AUTOCALL defb 13+128 ld (PTPLNS+1),a ld hl,TPPTX call AUTOCALL defb 13+128 ld (PTPTPP+1),a ld hl,FSTTX call AUTOCALL defb 13+128 ld (PTPBOUT+1),a ld hl,LSTTX call AUTOCALL defb 13+128 ld (PTPEOUT+1),a ld de,ENDTX call AUTOCALL defb 35+128 ex de,hl ld bc,0 call AUTOCALL defb 61+128 or a sbc hl,de add hl,de jr c,PTPZ ex de,hl PTPZ ld (PTPEND+1),hl ld de,BEGTX call AUTOCALL defb 35+128 call PTPLNS ld bc,1 PTPNEWP ld (PTCARD+1),hl ld (PTLTS+1),bc ld hl,0 ld (PRINTEDW+1),hl ld (PTOTALW+1),hl PTCARD ld hl,0 PTLTS ld bc,0 PTPMAIN push bc push de push hl dec hl call AUTOCALL defb 33,17+128 ld a,(hl) ld (PTCOLS+1),a inc hl ld a,(hl) ld (PTROWS+1),a dec hl call AUTOCALL defb 21+128 xor a out (137),a pop hl pop de pop bc call PTPETEST jr z,PTPA ld a,c PTPTPP cp 0 ld a,0 jr z,PTPA PTPEOUT ld a,0 PTPA ld e,a PTROWS ld a,0 sub e jr c,PTPNOP ld e,a ld a,b cp e jr nc,PTPNOP ld a,c dec a jr z,PTPB ld a,b PTPBOUT cp 0 jr c,PTPNOP PTPB dec d inc d jr nz,PTPC call PAPEROUT PTPC dec d call ONELINE PTPNOP inc b ld a,(PTROWS+1) dec a cp b jr nc,PTPMAIN inc c ld a,(PTPTPP+1) cp c jr nc,PTPD call PRINTALL jr c,PTCARD ld c,1 ld d,0 PTPD inc hl call PTPETEST ld b,a jr z,PTPF jr nc,PTPOK PTPF ld a,c dec a jp z,PTPNEWP jr PTPMAIN PRINTALL exx PRINTEDW ld hl,0 ld de,(PTOAW+1) add hl,de ld (PRINTEDW+1),hl ld de,(PTOTALW+1) or a sbc hl,de exx ret PTPOK call PRINTALL ld d,0 jp c,PTCARD call PAPEROUT STOP ld hl,0 call AUTOCALL defb 25+128 ONELINE push hl push de push bc xor a ld (OLEQ+1),a ld hl,18432 OLE3 ld (hl),0 inc hl ld a,h cp 22528/256 jr c,OLE3 inc h OLE7 ld (hl),56 inc hl ld a,h cp 23296/256 jr c,OLE7 ld a,b ld (OLE2+1),a PTCOLS ld a,0 OLE0 sub 1 jr c,LOCALW push af OLE2 ld b,0 ld c,a call AUTOCALL defb 5+128 push af ld a,d ld de,#302 ld hl,16384 set 4,(iy-7) ld (iy-8),16 call AUTOCALL defb 62+128 ld d,hx pop bc ld a,b add a,d jr nc,OLEG ld a,255 sub b ld d,a OLEG ld a,b add a,d ld l,a ld h,0 add hl,hl add hl,hl add hl,hl OLEQ ld a,0 or a jr nz,OLER inc a ld (OLEQ+1),a ld (LOCALW+1),hl OLER push de PTOTALW ld de,0 or a sbc hl,de add hl,de jr c,OLEI ld (PTOTALW+1),hl OLEI pop de inc b dec b ld hl,18432 jr z,OLE9 OLE5 call SIDEHL djnz OLE5 OLE9 ld b,d ld de,16384 ld c,16 OLE6 push bc push hl push de OLE8 ld a,(de) ld (hl),a inc e call SIDEHL djnz OLE8 pop hl call AUTOCALL defb 63+128 ex de,hl pop hl call AUTOCALL defb 63+128 pop bc dec c jr nz,OLE6 pop af jr OLE0 LOCALW ld hl,0 ld de,(PRINTEDW+1) or a sbc hl,de ld de,0 jr c,OLEJ PTOAW ld de,0 sbc hl,de add hl,de jr nc,OLEJ ex de,hl OLEJ push de ld de,(PRINTEDW+1) ld hl,18432 ld c,128 OLEL ld a,d or e jr z,OLEM dec de rrc c call c,SIDEHL jr OLEL OLEM pop de push hl push bc call PTPREP pop bc pop hl ld a,l add a,32 ld l,a jr nc,OLEN ld a,h add a,8 ld h,a OLEN call PTPREP pop bc pop de pop hl ret PTPREP ld b,1 PTPI push bc push de push hl ld a,13 call A_OUT OLEPR ld hl,0 call A_OUTTST call A_OUTTST call A_OUTTST push de ld hl,(PTPMULT2+1) ld h,0 call #30A9 ld a,l call A_OUT ld a,h call A_OUT pop de pop hl push hl PTPJ ld a,d or e jr z,PTPK push hl ld b,8 PTPM rlc (hl) rla inc h djnz PTPM PTPCNT ld hl,0 inc hl ld (PTPCNT+1),hl pop hl PTPMULT2 ld b,1 PTPG call A_OUT djnz PTPG dec de rrc c call c,SIDEHL jr PTPJ PTPK pop hl pop de pop bc djnz PTPI OLEK ld a,27 call A_OUT ld a,"J" call A_OUT ld a,24 call A_OUT ret PTPETEST push de PTPEND ld de,0 xor a sbc hl,de add hl,de pop de ret PAPEROUT ld a,12 call A_OUT PTPLNS ld d,0 ret SIDEHL ld a,l inc l jr z,SIDEHL2 xor l bit 5,a ret z ld a,l add a,32 ld l,a ret nc SIDEHL3 ld a,h add a,8 ld h,a ret SIDEHL2 set 5,l jr SIDEHL3 A_OUTTST ld a,(hl) inc hl cp -1 ret z A_OUT push af OUT2 call 8020 jp nc,AGAIN in a,(95) bit 7,a jr nz,OUT2 pop af out (31),a ld a,6 SENDOUT out (127),a nop ld a,7 out (127),a ret PMODETAB defb 27,"K",-1 defw 480 defb 27,"L",-1 defw 960 defb 27,"Y",-1 defw 960 defb 27,"*",4 defw 640 defb 27,"*",5 defw 576 defb 27,"*",6 defw 720 defb 27,"*",7 defw 1152 MODETAB defb 34,67,109,148,178 defb 211,255 INPUTAB defb 41,78,102,119,140 defb 164,180,255 MTS defb 27,64,27,108,7,7 PTOMODE ld bc,1 INPUTS pop hl ld a,(hl) inc hl or a push hl ret z pop hl ld b,(hl) inc hl push hl ld l,a ld h,64 call AUTOCALL defb 59+128 pop hl ld e,(hl) ld d,#2B inc hl ld a,(hl) inc hl ld b,(hl) inc hl push hl ld l,a ld h,b call AUTOCALL defb 60+128 jr INPUTS BEGTX defb "1",0,0,0,0 ENDTX defm "9999" nop FSTTX defb "0",0,0 LSTTX defb "0",0,0 LNSTX defb "3","7",0 TPPTX defb "9","9",0 KVTTX defb "1",0 WDTTX defb "1",0 PTOT defb 22,204,30,162 defb 22,17,17 defm "480" defb 22,49,17 defm "960" defb 22,81,17 defm "960+" defb 22,129,17 defm "640" defb 22,161,17 defm "576" defb 22,193,17 defm "720" defb 22,225,17 defm "1152" defb 22,78+24,2 defm " EPSON 9" defb 22,211,47 defm "Tiskni" defb 22,10,29 defm "Tiskni OD" defm "..DO" defb 22,80,29 defb 137 defm "/S T/S" defb 22,129,29 defm "Vynech" defm "_Kv. " defb 133,"." PTOE nop A0PTOEND A0LEN equ $-PRINT9P ;A0PTOEND musi byt 43250