EXRAMMODASM; PROGRAMM FUER 64K-RAM-MODUL ; ZUR UNTERSTUETZUNG BEI DER ASSEMBLER- ; PROGRAMMIERUNG DURCH SPEICHERBANK- ; WECHSEL ZUM SCHUTZ DES QUELLPROGRAMMES ORG 0BF00H CAOS EQU 0F003H MODU EQU 26H M64K EQU 0F6H ARGN EQU 0B781H NUMVX EQU 0B797H ; DEFW 7F7FH DEFM 'EXRAM' DEFB 1 LD B,L LD C,80H LD (NUMVX),BC IN A,(C) CP M64K JR Z,EX2 ERROR: CALL CAOS DEFB 19H ;ERROR RET ; EX2: LD HL,0B800H ;MODUL UMSCH. LD BC,(NUMVX) LD A,B ADD L LD L,A LD A,M AND 0C0H OR 3 XOR 80H LD M,A OUT (C),A CALL CAOS DEFB 1CH CALL CAOS DEFB 2CH ; LD SP,0BFFEH LD H,(IX+1) LD L,(IX+4) PUSH HL DI IN A,(88H) ;RAM0 AUS RES 1,A OUT (88H),A ; LD A,1 CALL CAOS DEFB 31H ;SIXD IN A,(88H) RES 1,A OUT (88H),A POP HL LD A,H OUT (84H),A LD (IX+1),A LD A,L AND 0FEH LD (IX+4),A OUT (86H),A EX11: LD SP,1C4H EI CALL CAOS DEFB 12H ; ; ZURUECKSTELLEN AUF RAM DEFW 7F7FH DEFM 'BACKRAM' DEFB 1 DI LD SP,0BFFEH LD H,(IX+1) LD L,(IX+4) PUSH HL IN A,(88H) SET 1,A ;RAM ON OUT (88H),A LD A,1 CALL CAOS DEFB 31H POP HL LD A,H LD (IX+1),A OUT (84H),A LD A,L OR 1 LD (IX+4),A OUT (86H),A JR EX11 ; ;VERLAGERN SPEICHERINHALT ZWISCHEN ;ZWEI SEITEN DES 64K-MODULS DEFW 7F7FH DEFM 'MCOPY' DEFB 1 LD A,(ARGN) CP 3 JP C,ERROR LD A,C MC1 EXX LD B,A LD C,80H IN A,(C) CP M64K JP NZ,ERROR LD HL,0B800H LD A,B ADD L LD L,A LD A,M LD L,A DI EXX MCL LD B,M EXX LD A,80H XOR L OUT (C),A EXX LD M,B EXX OUT (C),L EXX INC HL AND A PUSH HL SBC HL,DE POP HL JR NZ,MCL EI RET ;