Home | Contents | KwikPik |
Issue 7 | "Modification Madness" & "Disappointed Dumper" |
Issue 8 | "Dilated Dumps" |
Issue 10 | "Dumps on a Shoestring" |
Issue 12 | "Cure for Insomniacs" |
Issue 14 | "North of Watford?" & "Dumping the Gemini" |
Issue 16 | "One Dump Ahead" |
D U M P S O F D I S T I N C T I O N | ||
---|---|---|
Frustrated at producing tiny screen dumps on your full-sized printer? So was Andrew Pennell - until he developed this clever little machine code utility, that is! | ||
| ||
| ||
|
|
| |||||||
|
|
7ECD 23 950 INC HL 7ECE 10F9 960 DJNZ OUTLP ;do 3 bytes 7ED0 C1 970 POP BC ;restore X & Y 7ED1 04 980 INC B 7ED2 78 990 LD A,B 7ED3 FEB0 1000 CP 176 7ED5 38C7 1010 JR C,NXY ;do all 176 7ED7 3E0D 1020 LD A,13 ;end of line so do a CR 7ED9 CD147F 1030 CALL OUTCH 7EDC 3E0A 1040 LD A,10 ;LF code 7EDE 00 1050 NOP ;room for CALL OUTCH 7EDF 00 1060 NOP 7EE0 00 1070 NOP 7EE1 0C 1080 INC C 7EE2 209F 1090 JR NZ,NLINE ;do all 256 X pixels 7EE4 3E1B 1100 LD A,ESC ;reset line feed distance 7EE6 CD147F 1110 CALL OUTCH 7EE9 3E41 1120 LD A,"A" 7EEB CD147F 1130 CALL OUTCH 7EEE 3E0C 1140 LD A,12 7EF0 CD147F 1150 CALL OUTCH 7EF3 C9 1160 RET ;finish 1170 ;data table for colour patterns 7EF4 E0 1180 TABLE DEFB %11100000 ;black 7EF5 E0 1190 DEFB %11100000 7EF6 E0 1200 DEFB %11100000 7EF7 00 1210 DEFB 0 7EF8 C0 1220 DEFB %11000000 ;blue 7EF9 60 1230 DEFB %01100000 7EFA C0 1240 DEFB %11000000 7EFB 00 1250 DEFB 0 7EFC A0 1260 DEFB %10100000 ;red 7EFD 40 1270 DEFB %01000000 7EFE A0 1280 DEFB %10100000 7EFF 00 1290 DEFB 0 7F00 20 1300 DEFB %00100000 ;magenta 7F01 40 1310 DEFB %01000000 7F02 80 1320 DEFB %10000000 7F03 00 1330 DEFB 0 7F04 60 1340 DEFB %01100000 ;green 7F05 00 1350 DEFB %00000000 7F06 60 1360 DEFB %01100000 7F07 00 1370 DEFB 0 7F08 40 1380 DEFB %01000000 ;cyan 7F09 00 1390 DEFB %00000000 7F0A 40 1400 DEFB %01000000 7F0B 00 1410 DEFB 0 7F0C 00 1420 DEFB %00000000 ;yellow 7F0D 40 1430 DEFB %01000000 7F0E 00 1440 DEFB %00000000 7F0F 00 1450 DEFB 0 7F10 00 1460 DEFB %00000000 ;white 7F11 00 1470 DEFB %00000000 7F12 00 1480 DEFB %00000000 7F13 00 1490 DEFB 0 7F14 1500 END 1510 ; OUTCH - the send character to printer routine 7F14 1520 OUTCH EQU $ 1530 ; Hilderbay O/P routine 0001 1540 IF TYPE&HILDER 7F14 C5 1550 PUSH BC 7F15 E5 1560 PUSH HL ;save regs 7F16 CDFE5B 1570 CALL 23550 ;call the routine 7F19 E1 1580 POP HL 7F1A C1 1590 POP BC ;restore regs 7F1B C9 1600 RET 7F1C 1610 END 1620 ; KEMPSTON normal output 0000 1630 IF TYPE&KEMPN 7F1C 1640 DI 7F1C 1650 PUSH BC 7F1C 1660 LD BC,#E2BF 7F1C 1670 LD E,14 7F1C 1680 KBUSY IN D,(C) 7F1C 1690 BIT 0,D 7F1C 1700 JR NZ,KBUSY 7F1C 1710 LD B,224 7F1C 1720 OUT (C),A 7F1C 1730 LD B,227 7F1C 1740 OUT (C),E 7F1C 1750 INC E 7F1C 1760 OUT (C),E 7F1C 1770 EI 7F1C 1780 CALL #1F54 ;test break 7F1C 1790 JP NC,#0D00 ;error if pressed 7F1C 1800 POP BC 7F1C 1810 RET 7F1C 1820 END 1830 ; KEMPSTON E output 0000 1840 IF TYPE&KEMPE 7F1C 1850 PUSH AF 7F1C 1860 LD A,ESC 7F1C 1870 RST #10 7F1C 1880 POP AF 7F1C 1890 RST #10 7F1C 1900 RET 7F1C 1910 END | |||||||||
![]() |
Home | Contents | KwikPik |