home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Antic Magazine 1989 March
/
Antic_Magazine_1989_03_Antic_Side_A.atr
/
random.m65
< prev
next >
Wrap
Text File
|
2023-02-26
|
4KB
|
1 lines
10 ;RANDOM ATARI, SOURCE CODE¢20 ;BY DAVID McINTOSH¢30 ;(c)1988, ANTIC PUBLISHING¢40 *= $6400¢50 PLA ¢60 LDA #23¢70 STA 219¢80 LDA #172¢90 STA 220¢0100 LDA #218¢0110 STA 221¢0120 LDA #126¢0130 STA 222¢0140 LDX #4¢0150 RND1¢0155 LDA 204,X¢0160 STA 212,X¢0170 DEX ¢0180 BNE RND1¢0185 ;¢0190 JSR MULT¢0200 JSR MOD231M1¢0210 LDX #4¢0220 RND2¢0225 LDA 228,X¢0230 STA 204,X¢0240 DEX ¢0250 BNE RND2¢0255 ;¢0260 JSR ROTATL¢0270 JSR BTOD¢0280 RTS ¢0285 ;¢0290 *= 1536¢0300 ;MULTIPLY FR0 BY FRE GIVING FR1¢0310 MULT¢0315 LDY #32¢0320 LDA #0¢0330 LDX #8¢0340 ML1¢0345 STA 224,X¢0350 DEX ¢0360 BNE ML1¢0365 ;¢0370 ML2¢0375 LDX #8¢0380 CLC ¢0390 R1¢0395 ROL 224,X¢0400 DEX ¢0410 BNE R1¢0415 ;¢0420 LDX #4¢0430 CLC ¢0440 R2¢0445 ROL 218,X¢0450 DEX ¢0460 BNE R2¢0465 ;¢0470 BCC ML3¢0475 ;¢0480 JSR ADDER¢0490 LDX #4¢0500 MLA¢0505 BCC ML3¢0507 ;¢0510 LDA 224,X¢0520 ADC #0¢0530 STA 224,X¢0540 DEX ¢0550 BNE MLA¢0555 ;¢0560 ML3¢0565 DEY ¢0570 BNE ML2¢0575 ;¢0580 RTS ¢0585 ;¢0590 ;ADD FR0 TO FR1¢0600 ADDER¢0605 CLC ¢0610 LDX #4¢0620 ADDR1¢0625 LDA 228,X¢0630 ADC 212,X¢0640 STA 228,X¢0650 DEX ¢0660 BNE ADDR1¢0665 ;¢0670 RTS ¢0675 ;¢0680 ;CONVERT 8 BYTES AT FR1¢0685 ;TO MOD 2^31-1¢0690 MOD231M1¢0695 LDA #0¢0700 STA 224¢0710 ASL 229¢0720 LDX #5¢0730 MOD1¢0735 ROL 223,X¢0740 DEX ¢0750 BNE MOD1¢0755 ;¢0760 LSR 229¢0770 LDY #4¢0780 MOD2¢0785 LDA 228,Y¢0790 ADC 224,Y¢0800 STA 228,Y¢0810 DEY ¢0820 BNE MOD2¢0825 ;¢0830 LDA 224¢0840 ADC #0¢0850 MOD3¢0855 STA 228¢0860 ASL 229¢0870 ROL 228¢0880 LSR 229¢0890 LDA 228¢0900 BEQ MOD5¢0905 ;¢0910 ADC 232¢0920 STA 232¢0930 LDY #3¢0940 MOD4¢0945 LDA #0¢0950 ADC 228,Y¢0960 STA 228,Y¢0970 DEY ¢0980 BNE MOD4¢0985 ;¢0990 LDA #0¢1000 BEQ MOD3¢1005 ;¢1010 MOD5¢1015 RTS ¢1017 ;¢1020 ;CONVERT BINARY TO DECIMAL¢1030 BTOD¢1035 LDY #0¢1040 LDA #63¢1050 STA (203),Y¢1060 LDA #0¢1070 INY ¢1080 STA (203),Y¢1090 BD1¢1095 JSR MOVE¢1100 JSR MUL10¢1110 LDA 228¢1120 BEQ BD2¢1125 ;¢1130 LDY #1¢1140 BNE BD6¢1145 ;¢1150 BD2¢1155 JSR MOVE¢1160 JSR MUL10¢1170 LDA 228¢1180 BEQ BD4¢1185 ;¢1190 LDY #1¢1200 BNE BD8¢1205 ;¢1210 BD4¢1215 LDY #0¢1220 LDA (203),Y¢1230 TAX ¢1240 DEX ¢1250 TXA ¢1260 STA (203),Y¢1270 BNE BD1¢1275 ;¢1280 BD5¢1285 JSR MOVE¢1290 JSR MUL10¢1300 LDA 228¢1310 BD6¢1315 ASL A¢1320 ASL A¢1330 ASL A¢1340 ASL A¢1350 STA (203),Y¢1360 JSR MOVE¢1370 JSR MUL10¢1380 BD8¢1385 LDA (203),Y¢1390 CLC ¢1400 ADC 228¢1410 STA (203),Y¢1420 INY ¢1430 CPY #6¢1440 BNE BD5¢1445 ;¢1450 RTS ¢1455 ;¢1460 ;MOVE FR1 TO FR0¢1470 MOVE¢1475 LDX #4¢1480 MV1¢1485 LDA 228,X¢1490 STA 212,X¢1500 DEX ¢1510 BNE MV1¢1515 ;¢1520 RTS ¢1525 ;¢1530 ;MULTIPLY FR0 BY 10 GIVING FR1¢1540 ;ASSUMED: FR0 = FR1¢1550 MUL10¢1555 LDA #0¢1560 STA 228¢1570 JSR ROTATL¢1580 JSR ROTATL¢1590 JSR ADDER¢1600 LDA 228¢1610 ADC #0¢1620 STA 228¢1630 ;FALL THROUGH TO ROTATL¢1640 ;ROTATE LEFT,¢1645 ;FROM 227+1 TO 227+5¢1650 ROTATL¢1655 CLC ¢1660 LDX #5¢1670 ROTL¢1675 ROL 227,X¢1680 DEX ¢1690 BNE ROTL¢1695 ;¢1700 RTS ¢əəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəəə