10 ;  ÍÆÉÌÌ   öåò® ±›20 ;›30 ; COPYRIGHT (C) 1982 BY DAVID FOX AND MITCHELL WAITE›40 ;›0100 .TITLE "CLK-MFILL1.ASM;v01.00,810907-820407"›0110 .PAGE "Memory Fill Routine"›0120 ;›0130 ; BY COREY L. KOSAK›0140 ;›0150 ; Called from BASIC with TEMP=USR(MFILL,START,LEN,BYTE)›0160 ;›0170 ; THIS IS THE ATARI BASIC VERSION (USE ver.2 WITH MBASIC)›0180 *=$600›0190 LO=$CB ;POINTER TO DATA›0200 HI=$CC›0210 LENLO=$CD ;LENGTH IN BYTES›0220 LENHI=$CE›0230 MFILL PLA ;REMOVE STACK BIAS›0240 PLA ;ADDRESS...›0250 STA HI ;HI›0260 PLA›0270 STA LO ;LO›0280 PLA ;LENGTH...›0290 STA LENHI ;HI›0300 PLA›0310 STA LENLO ;LO›0320 PLA ;BYTE TO FILL HI (SHOULD BE ZERO - SO IGNORE IT)›0330 PLA ;DATA›0340 LDY #$00›0350 TAX ;SAVE FILL BYTE IN X-REG›0360 LOOP TXA ;AND TRANSFER IT BACK›0370 STA (LO),Y ;STORE BYTE›0380 INY ;BUMP POINTER›0390 BNE OK ;DID IT ROLL OVER?›0400 INC HI ;YES, INC HI BYTE›0410 OK LDA LENLO ;DECREMENT LENGTH BYTES›0420 BNE OK2›0430 DEC LENHI›0440 OK2 DEC LENLO›0450 LDA LENLO ;DOES LENGTH=0?›0460 ORA LENHI ;......?›0470 BNE LOOP ;NO, GO BACK FOR MORE›0480 DONE RTS ;LEAVE.›