Block-Fill and Block-Move#
00010 ------------------------------ 00020 * Block-Fill-Routine * 00030 * * 00040 * Registerinhalte: * 00050 * <A> Fill-Byte * 00060 * <X> Anzahl der Pages * 00070 * <Y> Start Page * 00080 * * 00090 ------------------------------ 00100 * 00110 FILL STY $1 Pointer und 00120 LDY #0 Index Setzen 00130 STY $0 00133 * 00140 .1 STA ($0),Y Byte setzen 00150 INY Index hochzaehlen 00160 BNE .1 wiederholen bis Ueberschlag 00170 INC $1 Pointer MSB hochzaehlen 00180 DEX Noch Pages 00190 BNE .1 Uebrig? Ja ==> 00200 RTS 00210 ------------------------------ 00220 * 00230 * 00240 * 00250 ------------------------------ 00260 * Block-Move-Routine * 00270 * * 00280 * Registerinhalte: * 00290 * * 00300 * <A> Source Page * 00310 * <X> Anzahl der Pages * 00320 * <Y> Destination Page * 00330 * * 00340 ------------------------------ 00350 * 00360 MOVE STA $1 Pointer 00370 STY $FF setzen 00380 LDY #0 Index 00390 STY $0 loeschen 00400 STY $FF 00410 * 00420 .1 LDA ($0),Y Move 00430 STA ($FE),Y 00440 INY Index hochzaehlen 00450 BNE .1 wiederholen bis Ueberschlag 00460 INC $1 Pointer MSB 00470 INC $FF hochzaehlen 00480 DEX Anzahl runterzaehlen 00490 BNE .1 Wiederholen 00500 RTS