1CLOSE#0 9VduBase = &300 10Vdu_queue = &31B 20TRINLN = &31B 30Plot_mode = &31F 40NewPoint = &320 50Queue_end = &323 60Gr_CursorY_int = &326 70Gr_CursorX_int = &324 80ExtensionVec = &226 90Mode = &355 100MemMode = &356 110ForeTxtCol = &357 120BackTxtCol = &358 130ForeGfxCol = &359 140BackGfxCol = &35A 150ForePlotCol = &35B 160BackPlotCol = &35C 170JMI_vec = &35D 180S_direction = &33D 190Pending = &26A 200H_direction = &332 210H_start = &32E 220S_start = &339 230SDELTA = &335 231SPARMS = &333 232HPARMS = &328 233GCSTMP = &33E 234OLDCS = &314 235HDELTA = &32A 240Vdu_workspace = &328 241TRSRTS = &FFA6 250TRISA = &D411 260TRISB = &D459 270RestoreCursor = &D628 280SORTA = &D632 290SORTY = &D636 300WRCH = &E0A4 310EMAEZ = &D0DE 320ULN = &D774 330SETZB = &D0B3 340HPLOT = &D6A2 350COPYF = &D47C 360SWAPB = &CDE2 370SWAPC = &CDE4 390PROCassemble 400END 410DEFPROCassemble 420C% = &2E00:DIM B% 512 430FOR Pass=4 TO 7 STEP 3 440 P%=C%: O%=B% 450[OPT Pass 460 470 .Buffer 480\ 2E00 EA : Nop 490\ 2E01 EA : Nop 500\ 2E02 EA : Nop 510\ 2E03 EA : Nop 520 .Vdu_entry 530\ 2E04 48 : Pha 540\ 2E05 8A : Txa 550\ 2E06 48 : Pha 560\ 2E07 98 : Tya 570\ 2E08 48 : Pha 580\ 2E09 BA : Tsx 590\ 2E0A BD 03 01: Lda &103,X 600\ 2E0D AE 01 2F: Ldx Temp+1 610\ 2E10 AC 6A 02: Ldy Pending 620\ 2E13 D0 17 : Bne test_VDU_command 630\ 2E15 8D 01 2F: Sta Temp+1 640\ 2E18 E0 16 : Cpx #22 650\ 2E1A D0 1C : Bne OrdinaryVDU 660 .TrapMode 670\ 2E1C AD 59 03: Lda ForeGfxCol 680\ 2E1F A2 04 : Ldx #4 690 .Loop1 700\ 2E21 CA : Dex 710\ 2E22 9D 00 2E: Sta Buffer,X 720\ 2E25 D0 FA : Bne Loop1 730\ 2E27 8E 00 2F: Stx Temp 740\ 2E2A F0 0C : Beq OrdinaryVDU 750 .test_VDU_command 760\ 2E2C C0 FF : Cpy #255 770\ 2E2E D0 08 : Bne OrdinaryVDU 780\ 2E30 E0 12 : Cpx #18 790\ 2E32 F0 30 : Beq Get_GCOL 800\ 2E34 E0 19 : Cpx #25 810\ 2E36 F0 08 : Beq Get_PLOT 820 .OrdinaryVDU 830\ 2E38 68 : Pla 840\ 2E39 A8 : Tay 850\ 2E3A 68 : Pla 860 .ConstAA 870\ 2E3B AA : Tax 880\ 2E3C 68 : Pla 890\ 2E3D 4C A4 E0: Jmp WRCH 900 .Get_PLOT 910\ 2E40 A0 FF : Ldy #(TRSRTS DIV 256) 920\ 2E42 A2 A6 : Ldx #(TRSRTS MOD 256) 930\ 2E44 AD 1F 03: Lda Vdu_queue+4 940\ 2E47 2C 3B 2E: Bit ConstAA 950\ 2E4A D0 10 : Bne SetVector 960\ 2E4C 49 7F : Eor #&7F 970\ 2E4E 2C F2 2F: Bit Const50 980\ 2E51 D0 09 : Bne SetVector 990\ 2E53 49 FF : Eor #&FF 1000\ 2E55 8D 1F 03: Sta Vdu_queue+4 1010\ 2E58 A0 2F : Ldy #(TrapPLOT DIV 256) 1020\ 2E5A A2 6F : Ldx #(TrapPLOT MOD 256) 1030 .SetVector 1040\ 2E5C 8E 26 02: Stx ExtensionVec 1050\ 2E5F 8C 27 02: Sty ExtensionVec+1 1060\ 2E62 D0 D4 : Bne OrdinaryVDU 1070 .Get_GCOL 1080\ 2E64 8C 01 2F: Sty Temp+1 1090\ 2E67 A0 2E : Ldy #(Gcol_32 DIV 256) 1100\ 2E69 A2 88 : Ldx #(Gcol_32 MOD 256) 1110\ 2E6B C9 20 : Cmp #32 1120\ 2E6D F0 06 : Beq SetJMItab 1130\ 2E6F A2 A4 : Ldx #(Gcol_64 MOD 256) 1140\ 2E71 C9 40 : Cmp #64 1150\ 2E73 D0 C3 : Bne OrdinaryVDU 1160 .SetJMItab 1170\ 2E75 8C 5E 03: Sty JMI_vec+1 1180\ 2E78 8E 5D 03: Stx JMI_vec 1190\ 2E7B AD 22 03: Lda Vdu_queue+7 1200\ 2E7E 8D 00 2F: Sta Temp 1210\ 2E81 A9 FB : Lda #&FB 1220\ 2E83 8D 6A 02: Sta Pending 1230\ 2E86 D0 B0 : Bne OrdinaryVDU 1240 .Gcol_32 1250\ 2E88 AD 55 03: Lda Mode 1260\ 2E8B 4A : Lsr A 1270\ 2E8C 6A : Ror A 1280\ 2E8D 30 08 : Bmi Skip3 1290\ 2E8F AD 20 03: Lda Vdu_queue+5 1300\ 2E92 B0 1F : Bcs Proc1 1310\ 2E94 8D 21 03: Sta Vdu_queue+6 1320 .Skip3 1330\ 2E97 AD 20 03: Lda Vdu_queue+5 1340\ 2E9A 20 E1 2E: Jsr Proc3 1350\ 2E9D AD 21 03: Lda Vdu_queue+6 1360\ 2EA0 20 E1 2E: Jsr Proc3 1370\ 2EA3 60 : Rts 1380 .Gcol_64 1390\ 2EA4 A0 FC : Ldy #&FC 1400\ 2EA6 A2 03 : Ldx #3 1410 .Loop2 1420\ 2EA8 B9 24 02: Lda NewPoint-&FC,Y 1430\ 2EAB 9D 00 2E: Sta Buffer,X 1440\ 2EAE C8 : Iny 1450\ 2EAF CA : Dex 1460\ 2EB0 10 F6 : Bpl Loop2 1470\ 2EB2 60 : Rts 1480 .Proc1 1490\ 2EB3 20 ED 2E: Jsr Proc4 1500\ 2EB6 AD 21 03: Lda Vdu_queue+6 1510\ 2EB9 20 ED 2E: Jsr Proc4 1520\ 2EBC AD 22 03: Lda Vdu_queue+7 1530\ 2EBF 20 ED 2E: Jsr Proc4 1540\ 2EC2 AD 23 03: Lda Queue_end 1550\ 2EC5 20 ED 2E: Jsr Proc4 1560\ 2EC8 60 : Rts 1570 .Proc2 1580\ 2EC9 B9 BC 2F: Lda Data,Y 1590\ 2ECC 5E 00 2E: Lsr Buffer,X 1600\ 2ECF 5E 00 2E: Lsr Buffer,X 1610 .Shift2 1620\ 2ED2 5E 00 2E: Lsr Buffer,X 1630\ 2ED5 5E 00 2E: Lsr Buffer,X 1640\ 2ED8 1D 00 2E: Ora Buffer,X 1650\ 2EDB 9D 00 2E: Sta Buffer,X 1660\ 2EDE 88 : Dey 1670\ 2EDF CA : Dex 1680\ 2EE0 60 : Rts 1690 .Proc3 1700\ 2EE1 18 : Clc 1710\ 2EE2 69 01 : Adc #1 1720\ 2EE4 20 02 2F: Jsr Proc5 1730 .Loop3 1740\ 2EE7 20 C9 2E: Jsr Proc2 1750\ 2EEA 10 FB : Bpl Loop3 1760\ 2EEC 60 : Rts 1770 .Proc4 1780\ 2EED 18 : Clc 1790\ 2EEE 69 02 : Adc #2 1800\ 2EF0 29 FC : And #&FC 1810\ 2EF2 20 02 2F: Jsr Proc5 1820 .Loop4 1830\ 2EF5 B9 BC 2F: Lda Data,Y 1840\ 2EF8 29 C0 : And #&C0 1850\ 2EFA 20 D2 2E: Jsr Shift2 1860\ 2EFD 10 F6 : Bpl Loop4 1870\ 2EFF 60 : Rts 1880 .Temp 1890\ 2F00 EA : Nop 1900\ 2F01 0D 10 02: EQUB &D 1910 .Proc5 1920\ 2F02 10 02 : Bpl Skip1 1930\ 2F04 A9 00 : Lda #0 1940 .Skip1 1950\ 2F06 0A : Asl A 1960\ 2F07 09 03 : Ora #3 1970\ 2F09 C9 43 : Cmp #67 1980\ 2F0B 90 02 : Bcc Skip2 1990\ 2F0D A9 43 : Lda #67 2000 .Skip2 2010\ 2F0F A8 : Tay 2020\ 2F10 A2 03 : Ldx #3 2030 .trsrts 2040\ 2F12 60 : Rts 2050 .trsf 2060\ 2F13 08 : Php 2070\ 2F14 A2 20 : Ldx #(NewPoint-VduBase) 2080\ 2F16 A0 35 : Ldy #(SDELTA-VduBase) 2090\ 2F18 20 11 D4: Jsr TRISA 2100\ 2F1B AD 36 03: Lda SDELTA+1 2110\ 2F1E 8D 3D 03: Sta S_direction 2120\ 2F21 A2 33 : Ldx #(SPARMS-VduBase) 2130\ 2F23 20 59 D4: Jsr TRISB 2140\ 2F26 A0 39 : Ldy #(S_start-VduBase) 2150\ 2F28 20 DE D0: Jsr EMAEZ 2160\ 2F2B 38 : Sec 2170\ 2F2C AD 22 03: Lda Vdu_queue+7 2180\ 2F2F ED 26 03: Sbc Gr_CursorY_int 2190\ 2F32 8D 1B 03: Sta Vdu_queue 2200\ 2F35 AD 23 03: Lda Queue_end 2210\ 2F38 ED 27 03: Sbc Gr_CursorY_int+1 2220\ 2F3B 8D 1C 03: Sta Vdu_queue+1 2230\ 2F3E 0D 1B 03: Ora Vdu_queue 2240\ 2F41 F0 17 : Beq trsfa 2250 .trsfb 2260\ 2F43 20 5D 2F: Jsr hplot 2270\ 2F46 A2 33 : Ldx #(SPARMS-VduBase) 2280\ 2F48 20 74 D7: Jsr ULN 2290\ 2F4B A2 28 : Ldx #(HPARMS-VduBase) 2300\ 2F4D 20 74 D7: Jsr ULN 2310\ 2F50 EE 1B 03: Inc Vdu_queue 2320\ 2F53 D0 EE : Bne trsfb 2330\ 2F55 EE 1C 03: Inc Vdu_queue+1 2340\ 2F58 D0 E9 : Bne trsfb 2350 .trsfa 2360\ 2F5A 28 : Plp 2370\ 2F5B 90 B5 : Bcc trsrts 2380 .hplot 2390\ 2F5D AD 3B 03: Lda S_start+2 2400\ 2F60 29 03 : And #3 2410\ 2F62 A8 : Tay 2420\ 2F63 BE 00 2E: Ldx Buffer,Y 2430\ 2F66 AC 00 2F: Ldy Temp 2440\ 2F69 20 B3 D0: Jsr SETZB 2450\ 2F6C 4C A2 D6: Jmp HPLOT 2460 .TrapPLOT 2470\ 2F6F A2 20 : Ldx #(NewPoint-VduBase) 2480\ 2F71 A0 3E : Ldy #(GCSTMP-VduBase) 2490\ 2F73 20 7C D4: Jsr COPYF 2500\ 2F76 20 32 D6: Jsr SORTA 2510\ 2F79 A2 14 : Ldx #(OLDCS-VduBase) 2520\ 2F7B A0 24 : Ldy #(Gr_CursorX_int-VduBase) 2530\ 2F7D 20 36 D6: Jsr SORTY 2540\ 2F80 20 32 D6: Jsr SORTA 2550\ 2F83 A2 20 : Ldx #(NewPoint-VduBase) 2560\ 2F85 A0 2A : Ldy #(HDELTA-VduBase) 2570\ 2F87 20 11 D4: Jsr TRISA 2580\ 2F8A AD 2B 03: Lda Vdu_workspace+3 2590\ 2F8D 8D 32 03: Sta H_direction 2600\ 2F90 A2 28 : Ldx #(HPARMS-VduBase) 2610\ 2F92 20 59 D4: Jsr TRISB 2620\ 2F95 A0 2E : Ldy #(H_start-VduBase) 2630\ 2F97 20 DE D0: Jsr EMAEZ 2640\ 2F9A 20 E2 CD: Jsr SWAPB 2650\ 2F9D 18 : Clc 2660\ 2F9E 20 13 2F: Jsr trsf 2670\ 2FA1 20 E2 CD: Jsr SWAPB 2680\ 2FA4 A2 20 : Ldx #(NewPoint-VduBase) 2690\ 2FA6 20 E4 CD: Jsr SWAPC 2700\ 2FA9 38 : Sec 2710\ 2FAA 20 13 2F: Jsr trsf 2720\ 2FAD 4C 28 D6: Jmp RestoreCursor 2721EQUS "?????????Adc" \ Garbage 2730 .Data 2740 EQUB &00 2750 EQUB &00 2760 EQUB &00 2770 EQUB &00 2780 EQUB &00 2790 EQUB &20 2800 EQUB &00 2810 EQUB &00 2820 EQUB &00 2830 EQUB &20 2840 EQUB &00 2850 EQUB &80 2860 EQUB &00 2870 EQUB &A0 2880 EQUB &00 2890 EQUB &80 2900 EQUB &00 2910 EQUB &A0 2920 EQUB &00 2930 EQUB &A0 2940 EQUB &10 2950 EQUB &A0 2960 EQUB &00 2970 EQUB &A0 2980 EQUB &10 2990 EQUB &A0 3000 EQUB &40 3010 EQUB &A0 3020 EQUB &50 3030 EQUB &A0 3040 EQUB &40 3050 EQUB &A0 3060 EQUB &50 3070 EQUB &A0 3080 EQUB &50 3090 EQUB &A0 3100 EQUB &50 3110 EQUB &B0 3120 EQUB &50 3130 EQUB &A0 3140 EQUB &50 3150 EQUB &B0 3160 EQUB &50 3170 EQUB &E0 3180 EQUB &50 3190 EQUB &F0 3200 EQUB &50 3210 EQUB &E0 3220 EQUB &50 3230 EQUB &F0 3240 EQUB &50 3250 EQUB &F0 3260 EQUB &70 3270 EQUB &F0 3280.Const50 EQUB &50 3290 EQUB &F0 3300 EQUB &70 3310 EQUB &F0 3320 EQUB &D0 3330 EQUB &F0 3340 EQUB &F0 3350 EQUB &F0 3360 EQUB &D0 3370 EQUB &F0 3380 EQUB &F0 3390 EQUB &F0 3400 EQUB &F0 3410 EQUB &F0 3420] 3430NEXT 3431OSCLI("SAVE :1.NewECFG "+STR$~(B%)+" +200") 3440ENDPROC