00000000: 20 20 20 20 20 20 20 20 20 2A 3D 20 24 31 30 30 | *= $100|
00000010: 30 0D 3B 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D |0.;-------------|
00000020: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D |----------------|
00000030: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 0D 3B C4 49 45 53 |----------.;.IES|
00000040: 45 20 C6 55 4E 4B 54 49 4F 4E 20 57 41 4E 44 45 |E .UNKTION WANDE|
00000050: 4C 54 20 45 49 4E 0D 3B 27 31 36 2D 42 49 54 20 |LT EIN.;'16-BIT |
00000060: 55 4E 53 49 47 4E 45 44 20 57 4F 52 44 27 20 28 |UNSIGNED WORD' (|
00000070: 56 4F 52 5A 45 49 43 48 45 4E 4C 4F 53 45 0D 3B |VORZEICHENLOSE.;|
00000080: 31 36 2D C2 49 54 2D DA 41 48 4C 20 49 4D 20 C2 |16-.IT-.AHL IM .|
00000090: 45 52 45 49 43 48 20 56 4F 4E 20 30 20 42 49 53 |EREICH VON 0 BIS|
000000A0: 20 36 35 35 33 35 29 0D 3B 44 41 53 20 49 4D 20 | 65535).;DAS IM |
000000B0: 58 2D 20 55 4E 44 20 59 2D D2 45 47 49 53 54 45 |X- UND Y-.EGISTE|
000000C0: 52 20 55 45 42 45 52 47 45 42 45 4E 0D 3B 57 49 |R UEBERGEBEN.;WI|
000000D0: 52 44 20 28 58 3D CC 4F 57 2D C2 59 54 45 2C 20 |RD (X=.OW-.YTE, |
000000E0: 59 3D C8 49 47 48 2D C2 59 54 45 29 20 49 4E 0D |Y=.IGH-.YTE) IN.|
000000F0: 3B 45 49 4E 45 4E 20 C4 45 5A 49 4D 41 4C 53 54 |;EINEN .EZIMALST|
00000100: 52 49 4E 47 2C 20 44 45 52 20 41 4E 20 44 45 52 |RING, DER AN DER|
00000110: 0D 3B C1 44 52 45 53 53 45 20 41 4E 47 45 4C 45 |.;.DRESSE ANGELE|
00000120: 47 54 20 57 49 52 44 2C 20 41 55 46 20 44 49 45 |GT WIRD, AUF DIE|
00000130: 20 44 45 52 0D 3B 50 4F 49 4E 54 45 52 20 28 24 | DER.;POINTER ($|
00000140: 46 43 2F 24 46 44 29 20 57 45 49 53 53 54 20 28 |FC/$FD) WEISST (|
00000150: 24 46 43 3D 4C 4F 2D 42 59 54 45 2C 0D 3B 24 46 |$FC=LO-BYTE,.;$F|
00000160: 44 3D 48 49 2D 42 59 54 45 29 2E 0D 3B C4 49 45 |D=HI-BYTE)..;.IE|
00000170: 20 C6 55 4E 4B 54 49 4F 4E 20 57 49 52 44 20 4D | .UNKTION WIRD M|
00000180: 49 54 20 22 4A 53 52 20 44 45 5A 22 20 41 55 46 |IT "JSR DEZ" AUF|
00000190: 2D 0D 3B 47 45 52 55 46 45 4E 2E 0D 0D 3B 20 20 |-.;GERUFEN...; |
000001A0: 20 20 20 20 20 20 20 20 20 20 20 20 20 28 57 29 | (W)|
000001B0: 20 31 39 39 32 20 C2 45 4E 4A 41 4D 49 4E 20 C2 | 1992 .ENJAMIN .|
000001C0: 4F 4D 4D 45 52 0D 3B 2D 2D 2D 2D 2D 2D 2D 2D 2D |OMMER.;---------|
000001D0: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D |----------------|
000001E0: 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 2D 0D 44 |--------------.D|
000001F0: 45 5A 20 20 20 20 20 20 53 54 58 20 44 4C 31 20 |EZ STX DL1 |
00000200: 20 20 20 20 3B 57 4F 52 44 20 50 55 46 46 45 52 | ;WORD PUFFER|
00000210: 4E 0D 20 20 20 20 20 20 20 20 20 53 54 59 20 44 |N. STY D|
00000220: 48 31 0D 0D 20 20 20 20 20 20 20 20 20 4C 44 59 |H1.. LDY|
00000230: 20 23 34 20 20 20 20 20 20 3B 42 45 52 45 49 43 | #4 ;BEREIC|
00000240: 48 20 4D 49 54 0D 20 20 20 20 20 20 20 20 20 4C |H MIT. L|
00000250: 44 41 20 23 24 33 30 20 20 20 20 3B 22 30 30 30 |DA #$30 ;"000|
00000260: 30 30 22 20 4C 4F 45 53 43 48 45 4E 0D 44 45 4C |00" LOESCHEN.DEL|
00000270: 50 20 20 20 20 20 53 54 41 20 28 24 46 43 29 2C |P STA ($FC),|
00000280: 59 0D 20 20 20 20 20 20 20 20 20 44 45 59 0D 20 |Y. DEY. |
00000290: 20 20 20 20 20 20 20 20 42 50 4C 20 44 45 4C 50 | BPL DELP|
000002A0: 0D 0D 20 20 20 20 20 20 20 20 20 4C 44 41 20 23 |.. LDA #|
000002B0: 3C 44 54 41 42 20 20 3B 50 4F 49 4E 54 45 52 20 |<DTAB ;POINTER |
000002C0: 41 55 46 0D 20 20 20 20 20 20 20 20 20 53 54 41 |AUF. STA|
000002D0: 20 24 46 45 20 20 20 20 20 3B 54 41 42 45 4C 4C | $FE ;TABELL|
000002E0: 45 20 49 4E 20 28 24 46 45 29 0D 20 20 20 20 20 |E IN ($FE). |
000002F0: 20 20 20 20 4C 44 41 20 23 3E 44 54 41 42 0D 20 | LDA #>DTAB. |
00000300: 20 20 20 20 20 20 20 20 53 54 41 20 24 46 46 0D | STA $FF.|
00000310: 0D 44 4E 30 20 20 20 20 20 20 4C 44 58 20 44 48 |.DN0 LDX DH|
00000320: 31 20 20 20 20 20 3B 4F 42 45 52 53 54 45 53 20 |1 ;OBERSTES |
00000330: 42 49 54 20 47 45 2D 0D 20 20 20 20 20 20 20 20 |BIT GE-. |
00000340: 20 42 50 4C 20 44 4E 31 20 20 20 20 20 3B 53 45 | BPL DN1 ;SE|
00000350: 54 5A 54 20 3F 0D 0D 20 20 20 20 20 20 20 20 20 |TZT ?.. |
00000360: 4C 44 59 20 23 34 20 20 20 20 20 20 3B 57 45 4E |LDY #4 ;WEN|
00000370: 4E 20 4A 41 2C 20 41 44 44 49 45 52 45 0D 20 20 |N JA, ADDIERE. |
00000380: 20 20 20 20 20 20 20 43 4C 43 20 20 20 20 20 20 | CLC |
00000390: 20 20 20 3B 57 45 52 54 20 41 55 53 20 54 41 42 | ;WERT AUS TAB|
000003A0: 45 4C 4C 45 0D 44 52 30 20 20 20 20 20 20 4C 44 |ELLE.DR0 LD|
000003B0: 41 20 28 24 46 43 29 2C 59 0D 20 20 20 20 20 20 |A ($FC),Y. |
000003C0: 20 20 20 41 44 43 20 28 24 46 45 29 2C 59 0D 20 | ADC ($FE),Y. |
000003D0: 20 20 20 20 20 20 20 20 43 4D 50 20 23 24 33 41 | CMP #$3A|
000003E0: 0D 20 20 20 20 20 20 20 20 20 42 43 43 20 44 52 |. BCC DR|
000003F0: 31 0D 20 20 20 20 20 20 20 20 20 53 42 43 20 23 |1. SBC #|
00000400: 31 30 0D 44 52 31 20 20 20 20 20 20 53 54 41 20 |10.DR1 STA |
00000410: 28 24 46 43 29 2C 59 0D 20 20 20 20 20 20 20 20 |($FC),Y. |
00000420: 20 44 45 59 0D 20 20 20 20 20 20 20 20 20 42 50 | DEY. BP|
00000430: 4C 20 44 52 30 0D 0D 44 4E 31 20 20 20 20 20 20 |L DR0..DN1 |
00000440: 4C 44 41 20 24 46 45 20 20 20 20 3B 54 41 42 45 |LDA $FE ;TABE|
00000450: 4C 4C 45 4E 2D 50 4F 49 4E 54 45 52 0D 20 20 20 |LLEN-POINTER. |
00000460: 20 20 20 20 20 20 43 4C 43 20 20 20 20 20 20 20 | CLC |
00000470: 20 3B 48 4F 43 48 53 45 54 5A 45 4E 0D 20 20 20 | ;HOCHSETZEN. |
00000480: 20 20 20 20 20 20 41 44 43 20 23 35 0D 20 20 20 | ADC #5. |
00000490: 20 20 20 20 20 20 53 54 41 20 24 46 45 0D 20 20 | STA $FE. |
000004A0: 20 20 20 20 20 20 20 42 43 43 20 44 4E 34 0D 20 | BCC DN4. |
000004B0: 20 20 20 20 20 20 20 20 49 4E 43 20 24 46 46 0D | INC $FF.|
000004C0: 0D 44 4E 34 20 20 20 20 20 20 41 53 4C 20 44 4C |.DN4 ASL DL|
000004D0: 31 20 20 20 20 3B 44 41 53 20 57 4F 52 44 20 57 |1 ;DAS WORD W|
000004E0: 49 52 44 20 55 4D 0D 20 20 20 20 20 20 20 20 20 |IRD UM. |
000004F0: 52 4F 4C 20 44 48 31 20 20 20 20 3B 45 49 4E 20 |ROL DH1 ;EIN |
00000500: 42 49 54 20 4E 41 43 48 20 4C 49 4E 4B 53 0D 20 |BIT NACH LINKS. |
00000510: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
00000520: 20 20 20 3B 47 45 53 48 49 46 54 45 54 2E 0D 0D | ;GESHIFTET...|
00000530: 20 20 20 20 20 20 20 20 20 4F 52 41 20 44 4C 31 | ORA DL1|
00000540: 20 20 20 20 3B 44 55 52 43 48 20 44 49 45 53 45 | ;DURCH DIESE|
00000550: 20 56 45 52 2D 0D 20 20 20 20 20 20 20 20 20 42 | VER-. B|
00000560: 4E 45 20 44 4E 30 20 20 20 20 3B 4B 4E 55 45 50 |NE DN0 ;KNUEP|
00000570: 46 55 4E 47 20 57 49 52 44 20 47 45 2D 0D 20 20 |FUNG WIRD GE-. |
00000580: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
00000590: 20 20 3B 50 52 55 45 46 54 20 4F 42 20 55 45 42 | ;PRUEFT OB UEB|
000005A0: 45 52 2D 0D 20 20 20 20 20 20 20 20 20 20 20 20 |ER-. |
000005B0: 20 20 20 20 20 20 20 20 3B 48 41 55 50 54 20 4E | ;HAUPT N|
000005C0: 4F 43 48 20 45 49 4E 20 42 49 54 0D 20 20 20 20 |OCH EIN BIT. |
000005D0: 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 | |
000005E0: 3B 49 4D 20 57 4F 52 44 20 47 45 53 45 54 5A 54 |;IM WORD GESETZT|
000005F0: 20 49 53 54 0D 20 20 20 20 20 20 20 20 20 20 20 | IST. |
00000600: 20 20 20 20 20 20 20 20 20 3B 2E 2E 20 57 45 4E | ;.. WEN|
00000610: 4E 20 4E 49 43 48 54 3A 0D 0D 20 20 20 20 20 20 |N NICHT:.. |
00000620: 20 20 20 52 54 53 20 20 20 20 20 20 20 20 3B 52 | RTS ;R|
00000630: 55 45 43 4B 53 50 52 55 4E 47 0D 0D 44 54 41 42 |UECKSPRUNG..DTAB|
00000640: 20 20 20 20 20 2E 42 59 54 45 20 33 2C 32 2C 37 | .BYTE 3,2,7|
00000650: 2C 36 2C 38 20 3B 32 5E 31 35 0D 20 20 20 20 20 |,6,8 ;2^15. |
00000660: 20 20 20 20 2E 42 59 54 45 20 31 2C 36 2C 33 2C | .BYTE 1,6,3,|
00000670: 38 2C 34 20 3B 32 5E 31 34 0D 20 20 20 20 20 20 |8,4 ;2^14. |
00000680: 20 20 20 2E 42 59 54 45 20 30 2C 38 2C 31 2C 39 | .BYTE 0,8,1,9|
00000690: 2C 32 20 3B 0D 20 20 20 20 20 20 20 20 20 2E 42 |,2 ;. .B|
000006A0: 59 54 45 20 30 2C 34 2C 30 2C 39 2C 36 20 3B 2E |YTE 0,4,0,9,6 ;.|
000006B0: 0D 20 20 20 20 20 20 20 20 20 2E 42 59 54 45 20 |. .BYTE |
000006C0: 30 2C 32 2C 30 2C 34 2C 38 20 3B 2E 0D 20 20 20 |0,2,0,4,8 ;.. |
000006D0: 20 20 20 20 20 20 2E 42 59 54 45 20 30 2C 31 2C | .BYTE 0,1,|
000006E0: 30 2C 32 2C 34 20 3B 2E 0D 20 20 20 20 20 20 20 |0,2,4 ;.. |
000006F0: 20 20 2E 42 59 54 45 20 30 2C 30 2C 35 2C 31 2C | .BYTE 0,0,5,1,|
00000700: 32 0D 20 20 20 20 20 20 20 20 20 2E 42 59 54 45 |2. .BYTE|
00000710: 20 30 2C 30 2C 32 2C 35 2C 36 20 3B 32 5E 38 0D | 0,0,2,5,6 ;2^8.|
00000720: 20 20 20 20 20 20 20 20 20 2E 42 59 54 45 20 30 | .BYTE 0|
00000730: 2C 30 2C 31 2C 32 2C 38 0D 20 20 20 20 20 20 20 |,0,1,2,8. |
00000740: 20 20 2E 42 59 54 45 20 30 2C 30 2C 30 2C 36 2C | .BYTE 0,0,0,6,|
00000750: 34 20 3B 2E 0D 20 20 20 20 20 20 20 20 20 2E 42 |4 ;.. .B|
00000760: 59 54 45 20 30 2C 30 2C 30 2C 33 2C 32 20 3B 2E |YTE 0,0,0,3,2 ;.|
00000770: 0D 20 20 20 20 20 20 20 20 20 2E 42 59 54 45 20 |. .BYTE |
00000780: 30 2C 30 2C 30 2C 31 2C 36 20 3B 2E 0D 20 20 20 |0,0,0,1,6 ;.. |
00000790: 20 20 20 20 20 20 2E 42 59 54 45 20 30 2C 30 2C | .BYTE 0,0,|
000007A0: 30 2C 30 2C 38 20 3B 0D 20 20 20 20 20 20 20 20 |0,0,8 ;. |
000007B0: 20 2E 42 59 54 45 20 30 2C 30 2C 30 2C 30 2C 34 | .BYTE 0,0,0,0,4|
000007C0: 20 3B 32 5E 32 0D 20 20 20 20 20 20 20 20 20 2E | ;2^2. .|
000007D0: 42 59 54 45 20 30 2C 30 2C 30 2C 30 2C 32 20 3B |BYTE 0,0,0,0,2 ;|
000007E0: 32 5E 31 0D 20 20 20 20 20 20 20 20 20 2E 42 59 |2^1. .BY|
000007F0: 54 45 20 30 2C 30 2C 30 2C 30 2C 31 20 3B 32 5E |TE 0,0,0,0,1 ;2^|
00000800: 30 0D 0D 44 4C 31 20 20 20 20 20 20 2E 42 59 54 |0..DL1 .BYT|
00000810: 45 20 30 0D 44 48 31 20 20 20 20 20 20 2E 42 59 |E 0.DH1 .BY|
00000820: 54 45 20 30 0D 0D |TE 0.. |
*= $1000.;---------------------
------------------.;DIESE FUNKTION WANDE
LT EIN.;'16-BIT UNSIGNED WORD' (VORZEICH
ENLOSE.;16-BIT-ZAHL IM BEREICH VON 0 BIS
65535).;DAS IM X- UND Y-REGISTER UEBERG
EBEN.;WIRD (X=LOW-BYTE, Y=HIGH-BYTE) IN.
;EINEN DEZIMALSTRING, DER AN DER.;ADRESS
E ANGELEGT WIRD, AUF DIE DER.;POINTER ($
FC/$FD) WEISST ($FC=LO-BYTE,.;$FD=HI-BYT
E)..;DIE FUNKTION WIRD MIT "JSR DEZ" AUF
-.;GERUFEN...; (W) 1992 BE
NJAMIN BOMMER.;-------------------------
--------------.DEZ STX DL1 ;WOR
D PUFFERN. STY DH1.. LDY
#4 ;BEREICH MIT. LDA #$30
;"00000" LOESCHEN.DELP STA ($FC),
Y. DEY. BPL DELP..
LDA #<DTAB ;POINTER AUF. STA
$FE ;TABELLE IN ($FE). LDA
#>DTAB. STA $FF..DN0 LDX DH
1 ;OBERSTES BIT GE-. BPL DN1
;SETZT ?.. LDY #4 ;WEN
N JA, ADDIERE. CLC ;WERT
AUS TABELLE.DR0 LDA ($FC),Y.
ADC ($FE),Y. CMP #$3A.
BCC DR1. SBC #10.DR1 STA
($FC),Y. DEY. BPL DR0..D
N1 LDA $FE ;TABELLEN-POINTER.
CLC ;HOCHSETZEN. AD
C #5. STA $FE. BCC DN4.
INC $FF..DN4 ASL DL1 ;DA
S WORD WIRD UM. ROL DH1 ;EIN
BIT NACH LINKS. ;GESH
IFTET... ORA DL1 ;DURCH DIESE
VER-. BNE DN0 ;KNUEPFUNG WIR
D GE-. ;PRUEFT OB UEB
ER-. ;HAUPT NOCH EIN
BIT. ;IM WORD GESETZT
IST. ;.. WENN NICHT:
.. RTS ;RUECKSPRUNG..DTAB
.BYTE 3,2,7,6,8 ;2^15. .BYT
E 1,6,3,8,4 ;2^14. .BYTE 0,8,1,9
,2 ;. .BYTE 0,4,0,9,6 ;..
.BYTE 0,2,0,4,8 ;.. .BYTE 0,1,
0,2,4 ;.. .BYTE 0,0,5,1,2.
.BYTE 0,0,2,5,6 ;2^8. .BYTE 0
,0,1,2,8. .BYTE 0,0,0,6,4 ;..
.BYTE 0,0,0,3,2 ;.. .BYTE
0,0,0,1,6 ;.. .BYTE 0,0,0,0,8 ;.
.BYTE 0,0,0,0,4 ;2^2. .
BYTE 0,0,0,0,2 ;2^1. .BYTE 0,0,0
,0,1 ;2^0..DL1 .BYTE 0.DH1 .BY
TE 0..
×
C64 Image
> CLICK IMAGE PREVIEW FOR FULL MODAL