home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
64'er
/
64ER_CD.iso
/
93xx
/
9308b.d64
/
dez-8bit.asc
< prev
next >
Wrap
Text File
|
1995-03-30
|
2KB
|
70 lines
*= $1000
;---------------------------------------
;─IESE ╞UNKTION WANDELT EIN
;'8-BIT UNSIGNED BYTE' (VORZEICHENLOSE
;8-┬IT-┌AHL IM ┬EREICH VON 0 BIS 255)
;DIE IM X-╥EGISTER UEBERGEBEN WIRD
;IN EINEN ─EZIMALSTRING, DER AN DER
;┴DRESSE ANGELEGT WIRD, AUF DIE DER
;POINTER ($FC/$FD) WEISST ($FC=LO-BYTE,
;$FD=HI-BYTE).
;─IE ╞UNKTION WIRD MIT "JSR DEZ" AUF-
;GERUFEN.
; (W) 1992 ┬ENJAMIN ┬OMMER
;---------------------------------------
DEZ STX DL1 ;BYTE PUFFERN
LDY #2 ;BEREICH MIT
LDA #$30 ;"000" LOESCHEN
DELP STA ($FC),Y
DEY
BPL DELP
LDA #<DTAB ;POINTER AUF
STA $FE ;TABELLE IN ($FE)
LDA #>DTAB
STA $FF
DN0 LDX DL1 ;OBERSTES BIT GE-
BPL DN1 ;SETZT ?
LDY #2 ;WENN 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
DN1 LDA $FE ;TABELLEN-POINTER
CLC ;HOCHSETZEN
ADC #3
STA $FE
BCC DN4
INC $FF
DN4 ASL DL1 ;DAS BYTE WIRD UM
;EIN BIT NACH LINKS
;GESHIFTET.
BNE DN0 ;NOCH EIN BIT GE-
;SETZT ? ╫ENN JA,
;WEITER, SONST:
RTS ;RUECKSPRUNG
DTAB .BYTE 1,2,8 ;2^7
.BYTE 0,6,4 ;.
.BYTE 0,3,2 ;.
.BYTE 0,1,6 ;.
.BYTE 0,0,8 ;
.BYTE 0,0,4 ;2^2
.BYTE 0,0,2 ;2^1
.BYTE 0,0,1 ;2^0
DL1 .BYTE 0