8-Bit Software Online Conversion

Shaded Printer Dump - Listing

10REM Mode 0 Portrait Dump (Light) 20REM after W.Trevelyan 30REM by M.Bobrowski 5'94 40: 45MODE0 50x=&70:z=&72:pix=&74:count=&75 60octet=&76:y=&7E:flag=&80 70osword=&FFF1:oswrch=&FFEE:osbyte=&F FF4 80FOR pass=0 TO 2 STEP 2 90P%=&900 100[OPT pass 110LDA #26:JSR oswrch 120LDA #3:LDX #10:JSR osbyte ½ output to printer 130.begin 140LDA #252:STA y 150LDA #3:STA y+1 ½ Y=1020 160.newline 170LDA #0:STA x:STA x+1 ½ X=0 180.bit 190JSR esc 200LDA #90:JSR oswrch 210LDA #128:JSR oswrch 220LDA #7:JSR oswrch ½ 1920 dots per l ine 230.start 240LDA #4:STA count 250LDA y:STA z:LDA y+1:STA z+1 260.readpix 270LDX #&70:LDY #0:LDA #9 280JSR osword ½ logical colour return ed in &74 290LDA pix:AND #7:TAY ½ logical colou r used as index to pattern 300.byte 310LDX #0 320LDA pattern,Y 330.loop1 340LSR A:ROL octet,X 350LSR A:ROL octet,X ½ 2 bits transfe rred from pattern to each byte in turn 360INX:CPX #3 370BNE loop1 380.loop2 390DEC count 400BEQ print 410SEC:LDA z:SBC #4:STA z 420BCS carryset:DEC z+1 430.carryset 440JMP readpix 450.print 460LDX #0 470.loop3 480LDA octet,X:JSR oswrch 490INX:CPX #3:BNE loop3 500½ increase X 510CLC:LDA x:ADC #2:STA x 520LDA x+1:ADC #0:STA x+1 530CMP #5 ½ end of line? (X=1280) 540BNE start 550JSR spacing 560½ go down 4 pixels 570SEC:LDA y:SBC #16:STA y 580LDA y+1:SBC #0:STA y+1 590BCC end ½ finish when Y=0 600JMP newline ½ otherwise continue 610.end 620LDA #7:JSR oswrch ½ beep 630JSR esc 640LDA #64:JSR oswrch ½ return printe r to default setting 650LDA #3:LDX #0:JMP osbyte ½ output to screen 660.esc 670LDA #27:JMP oswrch 680.spacing 690JSR esc 700LDA #51:JSR oswrch 710LDA #24:JSR oswrch 720LDA #13:JMP oswrch 730.pattern 740EQUD &FFFFFF00:EQUD &FFFFFF00 750] 760NEXT pass 770PRINT'"To save code press COPY ";:R EPEAT UNTIL INKEY-106:PRINT 780OSCLI"SA.SDump0L 900 "+STR$~P% 790END