_  __   _  _         _ _     _      _           _           
  __| |/ /_ | || |     __| (_)___| | __ (_)_ __   __| | _____  __
 / _` | '_ \| || |_   / _` | / __| |/ / | | '_ \ / _` |/ _ \ \/ /
| (_| | (_) |__   _| | (_| | \__ \   <  | | | | | (_| |  __/>  < 
 \__,_|\___/   |_|    \__,_|_|___/_|\_\ |_|_| |_|\__,_|\___/_/\_\
                                                                 
            

RNDGEN2

FILE INFORMATION

FILENAME(S): RNDGEN2

FILE TYPE(S): SEQ

FILE SIZE: 1.4K

FIRST SEEN: 2025-11-30 21:12:53

APPEARS ON: 1 disk(s)

FILE HASH

a27ec184bdaf08b16f4cfc2572e02a0388a5e06bc77a1302399b7145036a6de5

FOUND ON DISKS (1 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
TRANSACTOR DISK RNDGEN2 SEQ DuncanTwain 9 3 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

00000000: 42 41 53 45 3D 24 32 33  32 42 0D 43 45 4C 4C 32  |BASE=$232B.CELL2|
00000010: 31 3D 24 32 33 34 30 0D  43 45 4C 4C 32 3D 24 32  |1=$2340.CELL2=$2|
00000020: 33 32 44 0D 43 45 4C 4C  31 3D 24 32 33 32 43 0D  |32D.CELL1=$232C.|
00000030: 54 4D 50 3D 24 32 33 32  41 0D 46 4C 41 47 3D 24  |TMP=$232A.FLAG=$|
00000040: 32 33 32 39 0D 48 49 43  4E 54 3D 24 32 33 32 38  |2329.HICNT=$2328|
00000050: 0D 3B 2D 2D 2D 2D 2D 50  41 52 54 49 41 4C 20 53  |.;-----PARTIAL S|
00000060: 45 45 44 2D 2D 2D 2D 2D  0D 2A 3D 24 32 33 33 31  |EED-----.*=$2331|
00000070: 0D 2E 44 42 59 54 45 20  24 30 33 30 35 2C 24 30  |..DBYTE $0305,$0|
00000080: 39 30 34 2C 24 30 37 30  31 2C 24 30 34 30 36 2C  |904,$0701,$0406,|
00000090: 24 30 33 30 32 2C 24 30  30 30 35 2C 24 30 37 30  |$0302,$0005,$070|
000000A0: 34 2C 24 30 39 30 38 0D  2A 3D 24 32 33 34 31 0D  |4,$0908.*=$2341.|
000000B0: 3B 0D 3B 0D 3B 0D 49 4E  49 54 20 20 4C 44 41 20  |;.;.;.INIT  LDA |
000000C0: 23 30 20 3B 45 4E 54 52  59 20 50 4F 49 4E 54 20  |#0 ;ENTRY POINT |
000000D0: 54 4F 20 52 45 49 4E 49  54 49 41 4C 49 5A 45 0D  |TO REINITIALIZE.|
000000E0: 20 20 20 20 20 20 20 53  54 41 20 48 49 43 4E 54  |       STA HICNT|
000000F0: 20 20 20 20 20 20 20 3B  5A 45 52 4F 20 43 4F 55  |       ;ZERO COU|
00000100: 4E 54 45 52 20 4D 4F 53  54 20 53 49 47 20 42 59  |NTER MOST SIG BY|
00000110: 54 45 0D 20 20 20 20 20  20 20 53 54 41 20 46 4C  |TE.       STA FL|
00000120: 41 47 20 3B 43 4C 45 41  52 20 46 4C 41 47 0D 20  |AG ;CLEAR FLAG. |
00000130: 20 20 20 20 20 20 54 41  59 20 20 20 20 20 20 20  |      TAY       |
00000140: 20 20 20 20 20 20 3B 5A  45 52 4F 20 43 4F 55 4E  |      ;ZERO COUN|
00000150: 54 45 52 20 4C 45 41 53  54 20 53 49 47 20 42 59  |TER LEAST SIG BY|
00000160: 54 45 0D 53 48 49 46 54  20 20 43 4C 43 20 20 20  |TE.SHIFT  CLC   |
00000170: 20 20 20 20 20 20 20 20  20 20 3B 45 4E 54 52 59  |          ;ENTRY|
00000180: 20 41 46 54 45 52 20 52  45 49 4E 49 54 49 41 4C  | AFTER REINITIAL|
00000190: 49 5A 41 54 49 4F 4E 0D  20 20 20 20 20 20 20 4C  |IZATION.       L|
000001A0: 44 41 20 43 45 4C 4C 32  31 0D 20 20 20 20 20 20  |DA CELL21.      |
000001B0: 20 41 44 43 20 43 45 4C  4C 32 0D 20 20 20 20 20  | ADC CELL2.     |
000001C0: 20 20 43 4D 50 20 23 31  30 0D 20 20 20 20 20 20  |  CMP #10.      |
000001D0: 20 42 43 43 20 54 45 4D  50 20 20 20 20 20 20 20  | BCC TEMP       |
000001E0: 20 3B 41 43 43 20 3C 31  30 3A 20 41 4C 52 45 41  | ;ACC <10: ALREA|
000001F0: 44 59 20 4D 4F 44 20 31  30 0D 20 20 20 20 20 20  |DY MOD 10.      |
00000200: 20 53 42 43 20 23 31 30  20 20 20 20 20 20 20 20  | SBC #10        |
00000210: 20 3B 49 46 20 4E 4F 54  2C 4D 41 4B 45 20 52 45  | ;IF NOT,MAKE RE|
00000220: 53 55 4C 54 20 4D 4F 44  20 31 30 0D 54 45 4D 50  |SULT MOD 10.TEMP|
00000230: 20 20 20 53 54 41 20 54  4D 50 20 20 3B 53 54 4F  |   STA TMP  ;STO|
00000240: 52 45 20 55 4E 54 49 4C  20 53 48 49 46 54 20 49  |RE UNTIL SHIFT I|
00000250: 53 20 44 4F 4E 45 0D 20  20 20 20 20 20 20 4C 44  |S DONE.       LD|
00000260: 58 20 23 32 30 20 20 3B  23 20 4F 46 20 54 49 4D  |X #20  ;# OF TIM|
00000270: 45 53 20 54 4F 20 53 48  49 46 54 0D 4C 4F 4F 50  |ES TO SHIFT.LOOP|
00000280: 20 20 20 4C 44 41 20 42  41 53 45 2C 58 20 20 20  |   LDA BASE,X   |
00000290: 20 20 20 3B 53 48 49 46  54 20 46 52 4F 4D 20 48  |   ;SHIFT FROM H|
000002A0: 45 52 45 2E 2E 2E 0D 20  20 20 20 20 20 20 53 54  |ERE....       ST|
000002B0: 41 20 42 41 53 45 2B 31  2C 58 20 3B 54 4F 20 48  |A BASE+1,X ;TO H|
000002C0: 45 52 45 0D 20 20 20 20  20 20 20 44 45 58 20 20  |ERE.       DEX  |
000002D0: 20 20 20 20 20 3B 4E 45  58 54 20 4C 4F 57 45 52  |     ;NEXT LOWER|
000002E0: 20 43 45 4C 4C 0D 20 20  20 20 20 20 20 43 50 58  | CELL.       CPX|
000002F0: 20 23 30 20 20 20 20 3B  44 4F 4E 45 20 59 45 54  | #0    ;DONE YET|
00000300: 3F 0D 20 20 20 20 20 20  20 42 4E 45 20 4C 4F 4F  |?.       BNE LOO|
00000310: 50 20 20 3B 4E 4F 2C 20  54 48 45 4E 20 4C 4F 4F  |P  ;NO, THEN LOO|
00000320: 50 0D 20 20 20 20 20 20  20 4C 44 41 20 54 4D 50  |P.       LDA TMP|
00000330: 20 20 20 20 20 20 20 20  20 3B 47 45 54 20 4D 4F  |         ;GET MO|
00000340: 44 20 31 30 20 41 44 44  49 54 49 4F 4E 20 52 45  |D 10 ADDITION RE|
00000350: 53 55 4C 54 2E 2E 2E 0D  20 20 20 20 20 20 20 53  |SULT....       S|
00000360: 54 41 20 43 45 4C 4C 31  20 3B 41 4E 44 20 50 55  |TA CELL1 ;AND PU|
00000370: 54 20 49 4E 20 54 48 45  20 46 49 52 53 54 20 43  |T IN THE FIRST C|
00000380: 45 4C 4C 0D 20 20 20 20  20 20 20 4C 44 41 20 46  |ELL.       LDA F|
00000390: 4C 41 47 20 20 20 3B 47  45 54 20 46 4C 41 47 0D  |LAG   ;GET FLAG.|
000003A0: 20 20 20 20 20 20 20 43  4D 50 20 23 24 46 46 20  |       CMP #$FF |
000003B0: 3B 49 4E 49 54 49 41 4C  20 52 55 4E 4E 55 50 20  |;INITIAL RUNNUP |
000003C0: 44 4F 4E 45 3F 0D 20 20  20 20 20 20 20 42 4E 45  |DONE?.       BNE|
000003D0: 20 4C 4F 4F 50 32 20 3B  4E 4F 2C 20 54 48 45 4E  | LOOP2 ;NO, THEN|
000003E0: 20 43 4F 4E 54 49 4E 55  45 0D 20 20 20 20 20 20  | CONTINUE.      |
000003F0: 20 52 54 53 20 20 20 20  3B 59 45 53 2C 20 42 41  | RTS    ;YES, BA|
00000400: 43 4B 20 54 4F 20 4D 41  49 4E 20 50 52 47 4D 0D  |CK TO MAIN PRGM.|
00000410: 4C 4F 4F 50 32 20 20 49  4E 59 20 20 20 20 20 20  |LOOP2  INY      |
00000420: 20 20 20 20 20 20 20 3B  49 4E 43 52 45 4D 45 4E  |       ;INCREMEN|
00000430: 54 20 4C 45 41 53 54 20  53 49 47 20 42 59 54 45  |T LEAST SIG BYTE|
00000440: 0D 20 20 20 20 20 20 20  43 50 59 20 23 30 0D 20  |.       CPY #0. |
00000450: 20 20 20 20 20 20 42 4E  45 20 53 48 49 46 54 20  |      BNE SHIFT |
00000460: 20 20 20 20 20 20 3B 4E  4F 54 20 30 3A 20 43 4F  |      ;NOT 0: CO|
00000470: 4E 54 49 4E 55 45 0D 20  20 20 20 20 20 20 49 4E  |NTINUE.       IN|
00000480: 43 20 48 49 43 4E 54 20  20 20 20 20 20 20 3B 30  |C HICNT       ;0|
00000490: 3A 20 49 4E 43 52 45 4D  45 4E 54 20 4D 4F 53 54  |: INCREMENT MOST|
000004A0: 20 53 49 47 20 42 59 54  45 0D 20 20 20 20 20 20  | SIG BYTE.      |
000004B0: 20 4C 44 41 20 48 49 43  4E 54 0D 20 20 20 20 20  | LDA HICNT.     |
000004C0: 20 20 43 4D 50 20 23 31  30 20 20 20 20 20 20 20  |  CMP #10       |
000004D0: 20 20 3B 52 55 4E 4E 55  50 20 44 4F 4E 45 20 59  |  ;RUNNUP DONE Y|
000004E0: 45 54 3F 0D 20 20 20 20  20 20 20 42 4E 45 20 53  |ET?.       BNE S|
000004F0: 48 49 46 54 20 20 20 20  20 20 20 3B 4E 4F 2C 20  |HIFT       ;NO, |
00000500: 43 4F 4E 54 49 4E 55 45  0D 20 20 20 20 20 20 20  |CONTINUE.       |
00000510: 4C 44 41 20 23 24 46 46  0D 20 20 20 20 20 20 20  |LDA #$FF.       |
00000520: 53 54 41 20 46 4C 41 47  20 3B 59 45 53 2C 20 53  |STA FLAG ;YES, S|
00000530: 45 54 20 46 4C 41 47 0D  20 20 20 20 20 20 20 4A  |ET FLAG.       J|
00000540: 4D 50 20 53 48 49 46 54  20 20 20 20 20 20 20 3B  |MP SHIFT       ;|
00000550: 44 4F 4E 45 20 52 55 4E  4E 55 50 2C 20 53 48 49  |DONE RUNNUP, SHI|
00000560: 46 54 20 4E 4F 52 4D 41  4C 20 4E 4F 57 0D 2E 45  |FT NORMAL NOW..E|
00000570: 4E 44 0D                                          |ND.             |
BASE=$232B.CELL21=$2340.CELL2=$232D.CELL
1=$232C.TMP=$232A.FLAG=$2329.HICNT=$2328
.;-----PARTIAL SEED-----.*=$2331..DBYTE 
$0305,$0904,$0701,$0406,$0302,$0005,$070
4,$0908.*=$2341.;.;.;.INIT  LDA #0 ;ENTR
Y POINT TO REINITIALIZE.       STA HICNT
       ;ZERO COUNTER MOST SIG BYTE.     
  STA FLAG ;CLEAR FLAG.       TAY       
      ;ZERO COUNTER LEAST SIG BYTE.SHIFT
  CLC             ;ENTRY AFTER REINITIAL
IZATION.       LDA CELL21.       ADC CEL
L2.       CMP #10.       BCC TEMP       
 ;ACC <10: ALREADY MOD 10.       SBC #10
         ;IF NOT,MAKE RESULT MOD 10.TEMP
   STA TMP  ;STORE UNTIL SHIFT IS DONE. 
      LDX #20  ;# OF TIMES TO SHIFT.LOOP
   LDA BASE,X      ;SHIFT FROM HERE.... 
      STA BASE+1,X ;TO HERE.       DEX  
     ;NEXT LOWER CELL.       CPX #0    ;
DONE YET?.       BNE LOOP  ;NO, THEN LOO
P.       LDA TMP         ;GET MOD 10 ADD
ITION RESULT....       STA CELL1 ;AND PU
T IN THE FIRST CELL.       LDA FLAG   ;G
ET FLAG.       CMP #$FF ;INITIAL RUNNUP 
DONE?.       BNE LOOP2 ;NO, THEN CONTINU
E.       RTS    ;YES, BACK TO MAIN PRGM.
LOOP2  INY             ;INCREMENT LEAST 
SIG BYTE.       CPY #0.       BNE SHIFT 
      ;NOT 0: CONTINUE.       INC HICNT 
      ;0: INCREMENT MOST SIG BYTE.      
 LDA HICNT.       CMP #10         ;RUNNU
P DONE YET?.       BNE SHIFT       ;NO, 
CONTINUE.       LDA #$FF.       STA FLAG
 ;YES, SET FLAG.       JMP SHIFT       ;
DONE RUNNUP, SHIFT NORMAL NOW..END.
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL