10 SYS 9*4096 ;PROFI-ASS AUFRUF 12 .OPT OO 13 *= $C000 ;STARTADRESSE 14 ; 20 FLAG = $028D 21 TASTE = $CB 22 IRQ = $EA31 29 ;------------- 30 ; 110 SEI ;INIT 111 LDA #BEG 112 STA $0314 :STY $0315 113 CLI 115 LDA #$00 :LDY #$A0 ;$A000 ALS 116 STA $B3 :STY $B4 ;ZEIGER F.SAVE 117 LDA #5 :STA $02 ;COUNTER 122 RTS 123 ;-------------------- 130 ; 131 BEG LDA FLAG ;SHIFT/CTRL-FLAG 132 : LSR :BCS TSHIFT 133 : LSR 134 : LSR :BCS TCTRL 135 : LDA TASTE 140 : CMP #4 :BEQ STORE1 ;FTASTE GEDR. 145 : CMP #5 :BEQ STORE2 150 : CMP #6 :BEQ STORE3 155 : CMP #3 :BEQ STORE4 160 : JMP IRQ 163 ;--------------------- 164 ; 170 TSHIFT JMP SHIFT ;IN AKT.BILDSCH. 171 TCTRL DEC $02 ;COUNTER =0 "?" 172 LDA $02 :BEQ CONTR;DANN SAVE 190 JMP IRQ ;SONST WEITER IRQ 200 CONTR JMP CTRL 220 ; 221 ;================================== 222 ;STORE1-4 => DER AKTUELLE BILDSCHIRM WIRD IM RAM (A000-BFFF) ABGELEGT . 225 ;================================== 227 ; 230 STORE1 JSR UP1 :STA $FD 232 : LDY #$A0 :STY $FE 240 : JSR COPY 245 : JSR UP2 :LDY #$A4 255 : JMP COP 269 ; 270 STORE2 JSR UP1 :STA $FD 275 : LDY #$A8 :STY $FE 285 : JSR COPY 290 : JSR UP2 :LDY #$AC 300 : JMP COP 314 ; 315 STORE3 JSR UP1 :STA $FD 320 : LDY #$B0 :STY $FE 330 : JSR COPY 335 : JSR UP2 :LDY #$B4 345 : JMP COP 359 ; 360 STORE4 JSR UP1 :STA $FD 365 : LDY #$B8 :STY $FE 375 : JSR COPY 380 : JSR UP2 :LDY #$BC 390 : JMP COP 410 ;------------------- 450 UP1 LDA #$00 :LDY #$04 ;$0400 NACH 455 : STA $FB :STY $FC ;$FB/C 460 : RTS 464 ; 465 UP2 LDA #$00 :LDY #$D8 ;$D800 NACH 470 : STA $FB :STY $FC ;$FB/C 475 : RTS 479 ; 480 COP STA $FD :STY $FE 485 : JSR COPY 490 : JMP IRQ 491 ;-------------------- 492 SHIFT LDA TASTE 493 : CMP #4 :BEQ HOLE1 494 : CMP #5 :BEQ HOLE2 495 : CMP #6 :BEQ HOLE3 496 : CMP #3 :BEQ HOLE4 497 : JMP IRQ 498 ;--------------------- 499 ; 500 ;================================== 501 ;HOLE1-4 => DER GESPEICHERTE BILDSCHIRM WIRD IN D.AKTUELLEN ZURUECKKOPIERT. 502 ;================================== 505 HOLE1 LDA $01 :PHA 510 : LDA #$36 :STA $01 515 : JSR UP3 :STA $FB 520 : LDY #$A0 :STY $FC 525 : JSR COPY 530 : JSR UP4 :LDY #$A4 540 : JMP COP2 545 ; 555 HOLE2 LDA $01 :PHA 560 : LDA #$36 :STA $01 565 : JSR UP3 :STA $FB 570 : LDY #$A8 :STY $FC 580 : JSR COPY 585 : JSR UP4 :LDY #$AC 595 : JMP COP2 600 ; 610 HOLE3 LDA $01 :PHA 615 : LDA #$36 :STA $01 620 : JSR UP3 :STA $FB 625 : LDY #$B0 :STY $FC 635 : JSR COPY 640 : JSR UP4 :LDY #$B4 650 : JMP COP2 655 ; 665 HOLE4 LDA $01 :PHA 670 : LDA #$36 :STA $01 675 : JSR UP3 :STA $FB 680 : LDY #$B8 :STY $FC 690 : JSR COPY 695 : JSR UP4 :LDY #$BC 705 : JMP COP2 709 ;-------------------- 710 ; 720 UP3 LDA #$00 :LDY #$04 ;$0400 NACH 725 : STA $FD :STY $FE ;$FD/E 730 : RTS 734 ; 735 UP4 LDA #$00 :LDY #$D8 ;$D800 NACH 740 : STA $FD :STY $FE ;$FD/E 745 : RTS 749 ; 750 COP2 STA $FB :STY $FC 755 : JSR COPY 765 : PLA :STA $01 770 : JMP IRQ 775 ;--------------------- 776 CTRL LDA #5 :STA $02 ;SETZE ZAEHLER 780 : LDA TASTE ;CTRL/F-TASTE 781 : CMP #4 :BEQ SAVE1;GEDRUECKT"?" 782 : CMP #5 :BEQ SAVE2 783 : CMP #6 :BEQ SAVE3 784 : CMP #3 :BEQ SAVE4 785 : JMP IRQ 786 ; 788 ;================================== 789 ;SAVE 1-4 =>DIE BILDSCHIRME UNTER DEM ROM WERDEN ABGESPEICHERT. 790 ;================================== 791 SAVE1 SEI 792 : LDA $01 :PHA 794 : LDA #$36 :STA $01 795 : LDX #8 :JSR $FFBA 796 : LDA #8 797 : LDX #NA1 798 : JSR $FFBD 799 : LDA #$B3 800 : LDX #$00 :LDY #$A8 801 : JSR $FFD8 802 : PLA :STA $01 803 : CLI :JMP IRQ 805 ; 810 SAVE2 SEI 811 : LDA $01 :PHA 812 : LDA #$36 :STA $01 813 : LDX #8 :JSR $FFBA 814 : LDA #8 815 : LDX #NA2 816 : JSR $FFBD 817 : LDA #$B3 818 : LDX #$A7 :LDY #$AF 819 : JSR $FFD8 820 : PLA :STA $01 822 : CLI :JMP IRQ 825 ; 830 SAVE3 SEI 831 : LDA $01 :PHA 832 : LDA #$36 :STA $01 833 : LDX #8 :JSR $FFBA 834 : LDA #8 835 : LDX #NA3 836 : JSR $FFBD 837 : LDA #$B3 838 : LDX #$7B :LDY #$B7 839 : JSR $FFD8 840 : PLA :STA $01 843 : CLI :JMP IRQ 845 ; 850 SAVE4 SEI 851 : LDA $01 :PHA 852 : LDA #$36 :STA $01 853 : LDX #8 :JSR $FFBA 854 : LDA #8 855 : LDX #NA4 856 : JSR $FFBD 857 : LDA #$B3 858 : LDX #$FF :LDY #$BF 859 : JSR $FFD8 860 : PLA :STA $01 862 : CLI :JMP IRQ 900 ;================================== 901 ;STARTADRESSE ==> IN $FB/C ENDADRESSE ==> IN $FD/E 902 ;DIE ANGEGEBENEN BEREICHE WERDEN MIT DIESEM UNTERPRG. KOPIERT. 903 ;================================== 905 COPY LDX #4 :LDY #0 910 N LDA ($FB),Y 915 : STA ($FD),Y 920 : INY 925 : BNE N 930 : INC $FC :INC $FE 935 : DEX 940 : BNE N 945 : RTS 950 ;--------------------- 960 NA1 .ASC "SCREEN 1" 961 NA2 .ASC "SCREEN-2" 962 NA3 .ASC "SCREEN-3" 963 NA4 .ASC "SCREEN-4"