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

WMOD

FILE INFORMATION

FILENAME(S): WMOD

FILE TYPE(S): PRG

FILE SIZE: 537b

FIRST SEEN: 2025-11-30 21:11:34

APPEARS ON: 1 disk(s)

FILE HASH

bd6290583cd8cbea145216c77ee8d0bc770466f6788147c73fb26e6168287e7d

FOUND ON DISKS (1 DISKS)

DISK TITLE FILENAME FILE TYPE COLLECTION TRACK SECTOR ACTIONS
NOG UITZOEKEN WMOD PRG DuncanTwain 4 3 DOWNLOAD FILE

FILE CONTENT & ANALYSIS

00000000: 3B 20 57 4D 4F 44 20 2D  20 31 36 20 42 49 54 20  |; WMOD - 16 BIT |
00000010: 55 4E 53 49 47 4E 45 44  20 52 45 4D 41 49 4E 44  |UNSIGNED REMAIND|
00000020: 45 52 0D 20 44 45 46 20  57 4D 4F 44 20 53 59 54  |ER. DEF WMOD SYT|
00000030: 4D 50 25 20 2C 20 53 59  50 4E 54 25 20 2C 20 2E  |MP% , SYPNT% , .|
00000040: 53 59 43 4E 54 0D 20 20  49 46 20 53 59 50 4E 54  |SYCNT.  IF SYPNT|
00000050: 20 4F 52 20 53 59 50 4E  54 2B 31 20 3D 20 30 20  | OR SYPNT+1 = 0 |
00000060: 47 4F 54 4F 20 53 59 57  52 45 0D 20 20 4C 44 58  |GOTO SYWRE.  LDX|
00000070: 20 23 31 0D 53 59 57 52  31 20 4C 45 54 20 53 59  | #1.SYWR1 LET SY|
00000080: 50 4E 54 2B 31 20 41 4E  44 20 24 38 30 20 3A 20  |PNT+1 AND $80 : |
00000090: 42 4E 45 20 53 59 57 52  33 0D 20 20 49 4E 58 20  |BNE SYWR3.  INX |
000000A0: 3A 20 41 53 4C 20 53 59  50 4E 54 20 3A 20 52 4F  |: ASL SYPNT : RO|
000000B0: 4C 20 53 59 50 4E 54 2B  31 0D 20 20 47 4F 54 4F  |L SYPNT+1.  GOTO|
000000C0: 20 53 59 57 52 31 0D 53  59 57 52 33 20 4C 45 54  | SYWR1.SYWR3 LET|
000000D0: 20 53 59 54 4D 50 20 2D  20 53 59 50 4E 54 20 3A  | SYTMP - SYPNT :|
000000E0: 20 54 41 59 0D 20 20 4C  44 41 20 53 59 54 4D 50  | TAY.  LDA SYTMP|
000000F0: 2B 31 20 3A 20 53 42 43  20 53 59 50 4E 54 2B 31  |+1 : SBC SYPNT+1|
00000100: 0D 20 20 42 43 43 20 53  59 57 52 34 0D 20 20 53  |.  BCC SYWR4.  S|
00000110: 54 41 20 53 59 54 4D 50  2B 31 20 3A 20 54 59 41  |TA SYTMP+1 : TYA|
00000120: 20 3A 20 53 54 41 20 53  59 54 4D 50 0D 53 59 57  | : STA SYTMP.SYW|
00000130: 52 34 0D 20 20 4C 53 52  20 53 59 50 4E 54 2B 31  |R4.  LSR SYPNT+1|
00000140: 20 3A 20 52 4F 52 20 53  59 50 4E 54 0D 20 20 44  | : ROR SYPNT.  D|
00000150: 45 58 20 3A 20 42 4E 45  20 53 59 57 52 33 0D 53  |EX : BNE SYWR3.S|
00000160: 59 57 52 35 20 4C 45 54  20 53 59 50 4E 54 20 3D  |YWR5 LET SYPNT =|
00000170: 20 53 59 43 4E 54 0D 20  20 4C 45 54 20 53 59 50  | SYCNT.  LET SYP|
00000180: 4E 54 2B 31 20 3D 20 53  59 43 4E 54 2B 31 0D 20  |NT+1 = SYCNT+1. |
00000190: 20 4C 44 59 20 23 30 20  3A 20 4C 45 54 20 28 53  | LDY #0 : LET (S|
000001A0: 59 50 4E 54 29 2C 59 20  3D 20 53 59 54 4D 50 0D  |YPNT),Y = SYTMP.|
000001B0: 20 20 49 4E 59 20 3A 20  4C 45 54 20 28 53 59 50  |  INY : LET (SYP|
000001C0: 4E 54 29 2C 59 20 3D 20  53 59 54 4D 50 2B 31 0D  |NT),Y = SYTMP+1.|
000001D0: 20 20 52 45 54 55 52 4E  0D 53 59 57 52 45 20 4C  |  RETURN.SYWRE L|
000001E0: 45 54 20 24 46 46 20 2D  3E 20 53 59 54 4D 50 20  |ET $FF -> SYTMP |
000001F0: 2D 3E 20 53 59 54 4D 50  2B 31 0D 20 20 47 4F 54  |-> SYTMP+1.  GOT|
00000200: 4F 20 53 59 57 52 35 0D  20 45 4E 44 44 45 46 20  |O SYWR5. ENDDEF |
00000210: 57 4D 4F 44 0D 00 00 00  FF                       |WMOD.....       |
; WMOD - 16 BIT UNSIGNED REMAINDER. DEF 
WMOD SYTMP% , SYPNT% , .SYCNT.  IF SYPNT
 OR SYPNT+1 = 0 GOTO SYWRE.  LDX #1.SYWR
1 LET SYPNT+1 AND $80 : BNE SYWR3.  INX 
: ASL SYPNT : ROL SYPNT+1.  GOTO SYWR1.S
YWR3 LET SYTMP - SYPNT : TAY.  LDA SYTMP
+1 : SBC SYPNT+1.  BCC SYWR4.  STA SYTMP
+1 : TYA : STA SYTMP.SYWR4.  LSR SYPNT+1
 : ROR SYPNT.  DEX : BNE SYWR3.SYWR5 LET
 SYPNT = SYCNT.  LET SYPNT+1 = SYCNT+1. 
 LDY #0 : LET (SYPNT),Y = SYTMP.  INY : 
LET (SYPNT),Y = SYTMP+1.  RETURN.SYWRE L
ET $FF -> SYTMP -> SYTMP+1.  GOTO SYWR5.
 ENDDEF WMOD.....
C64 Preview

> CLICK IMAGE PREVIEW FOR FULL MODAL