home *** CD-ROM | disk | FTP | other *** search
- 100 OPEN2,8,1,"0:MOVE80F.ML"
- 110 SYS700
- 120 .OPT P,O2
- 130 *=$9E34
- 135 ;*** PROTECT ML FROM BASIC VARS ***
- 140 PRTCT LDA #<PRTCT-1:LDX #>PRTCT-1
- 150 : STA 55:STX 56:RTS
- 155 ;*** ACTUAL CODE FOR TRANSFERS ***
- 156 ;*** GET PARAMETERS FROM SYS ***
- 157 ;*** SYNTAX = ***
- 158 ;*** SYS40509,MODE,VDC,AD,LE ***
- 160 ISTRT JSR FAST0:JSR INTXP:CMP #$00
- 165 : BNE ERRJP:STX RWFLG:CPX #$00
- 170 : BNE IST01:JSR INTXP:STX CCC
- 180 : STA CCC+1:JSR INTXP:STX AAA
- 190 : STA AAA+1:JMP IST02
- 195 ;*** SYNTAX ERROR IF RWFLG>255 ***
- 210 ERRJP JMP $AF08
- 220 IST01 JSR INTXP:STX AAA:STA AAA+1
- 230 : JSR INTXP:STX CCC:STA CCC+1
- 240 IST02 JSR INTXP:STX BBB:STA BBB+1
- 250 : LDA BBB:LDX BBB+1:CLC:ADC AAA
- 260 : TAY:TXA:ADC AAA+1:TAX:TYA
- 270 : STA BBB:STX BBB+1
- 280 START LDA AAA:LDX AAA+1:JMP GETDA
- 290 CHK01 LDA DDD:LDX DDD+1:STA $22
- 300 : STX $23:LDA BBB:LDX BBB+1
- 310 : CPX $23:BEQ CHK02:BCS ADD01
- 320 : BCC JEXIT
- 330 CHK02 CMP $22:BEQ JEXIT:BCS ADD01
- 340 JEXIT LDA RWFLG:CMP #3:BNE REXIT
- 350 : JMP FIX01
- 360 REXIT JMP FIX02
- 370 ADD01 LDA DDD:LDX DDD+1:JSR ADD02
- 380 GETDA STA DDD:STX DDD+1:LDA RWFLG
- 390 : CMP #1:BEQ CONT1:CMP #3
- 400 : BNE PUTDA
- 410 CONT1 JSR GETD0:STA DATA1:LDA CCC
- 420 : LDX CCC+1:STA $22:STX $23
- 430 : LDA DATA1:LDY #0:STA ($22),Y
- 440 : JMP DAXIT
- 450 PUTDA LDA DDD:LDX DDD+1:STA $22
- 460 : STX $23:LDX #0:LDY #0
- 470 : LDA ($22),Y:STA DATA1:LDA CCC
- 480 : LDX CCC+1:JSR PUTD0
- 490 DAXIT JSR ADDCC:JMP CHK01
- 500 ADD02 CLC:ADC #1:TAY:TXA
- 510 : ADC #0:TAX:TYA:RTS
- 520 POKE1 JSR PEEK2:JSR SETLO:LDA DATA1
- 530 : STA $D601:RTS
- 540 WAIT1 LDA $D600:AND #$80:BEQ WAIT1
- 550 : RTS
- 560 PEEK1 JSR PEEK2:JSR WAIT1:JSR SETLO
- 570 : LDA $D601:RTS
- 580 SETLO LDA DATA2:STA $D601:LDA #$1F
- 590 : JSR STD60:RTS
- 600 PEEK2 LDA #$12:JSR STD60:LDA DATA3
- 610 : STA $D601:LDA #$13:STA $D600
- 620 : RTS
- 630 GETD0 LDA DDD:LDX DDD+1:STA DATA2
- 640 : STX DATA3:JSR PEEK1:RTS
- 650 PUTD0 STA DATA2:STX DATA3:JSR POKE1
- 660 : RTS
- 670 INTXP JSR $AEFD:JSR $AD9E:JSR $BC9B
- 680 LDX 101:LDA 100:RTS
- 690 STD60 STA $D600:JSR WAIT1:RTS
- 700 ADDCC LDA CCC:LDX CCC+1:JSR ADD02
- 710 : STA CCC:STX CCC+1:RTS
- 720 FIX01 LDA #1:STA 2050:JSR 42291
- 730 : LDA 34:LDX 35:STA 45:STX 46
- 740 FIX02 JSR SLOW0:RTS
- 745 ;*** BLANK SCREEN AND GOTO FAST ***
- 750 FAST0 LDA $D011:AND #$EF:LDX #$01
- 760 JMP MODE0
- 765 ;*** FIX SCREEN AND GOTO SLOW ***
- 770 SLOW0 LDA $D011:ORA #$10:LDX #$00
- 780 MODE0 STA $D011:STX $D030:RTS
- 790 AAA .BYTE 0,0
- 800 BBB .BYTE 0,0
- 810 CCC .BYTE 0,0
- 820 DDD .BYTE 0,0
- 830 DATA1 .BYTE 0
- 840 DATA2 .BYTE 0
- 850 DATA3 .BYTE 0
- 860 RWFLG .BYTE 0
-