home *** CD-ROM | disk | FTP | other *** search
- ASCII
- SEQ formatted GEOS file V1.0
- Olivetti PR2300
- OP V2.0 or higher
- BLASTER'S CONVERTER V2.5
- ASCII
- UTILITY
- COPE SOURCE V1.0
- DL870517
- COPE EDITOR V1.0
- ; ASCII
- ; VALUE IS THE BINARY NUMBER CONVERTED INTO ASCII CODE.
- VALUE .BYTE 0,0
- ;MOD 10 IS A TEMPORARY WORK AREA
- MOD10 .BYTE 0,0
- Keyinlen .BYTE 0
- KINBUF .Block 32,0
- DISLEN .BYTE 0
- DXSBUF .Block 32,0
- ; CONVERSION ROUTINES
- ; USED TO CONVERT ASCII CHARACTERS
- ; TO A WORD VALUE.
- ; BEFORE ENTRY MOVE NUMBER TO
- ; CONVERT INTO 'VALUE' LOCATION
- ; RESULT IS STORED IN DXSBUF
- ; AND LENGTH IS PLACED IN DISLEN
- ; CONVERTS BINARY, DECIMAL AND HEXADECIMAL
- RESULT .Byte 0,0
- ;=======
- BIN2ST
- jsr move2value
- LDA #0
- STA DISLEN
- STA XLOOP
- BINLP1
- INC XLOOP
- ASL VALUE
- ROL VALUE+1
- BCS ONEBIN
- BNE DOTZER
- BNE DOTZER
- LDA XLOOP
- CMP #16
- BNE BINLP1
- DOTZER
- LDA #48
- STA DXSBUF,X
- BNE ENDLOP
- ONEBIN LDA #49
- STA DXSBUF,X
- ENDLOP
- LDA XLOOP
- CMP #16
- BNE BINLP1
- STX DISLEN
- XLOOP .BYTE 0
- ;----------*
- ;BSTRING2BIN CONVERSION ROUTINE
- ST2BIN
- LDA #0
- STA RESULT
- STA RESULT+1
- BINLOP
- ASL RESULT
- ROL RESULT+1
- LDA KINBUF,X
- AND #1
- ADC RESULT
- STA RESULT
- LDA #0
- ADC RESULT+1
- STA RESULT+1
- CPX Keyinlen
- BNE BINLOP
- ;-------*
- ;HEX2BIN CONVERSION ROUTINE
- HEXBIN
- LDA #0
- STA RESULT
- STA RESULT+1
- HEXLOP
- ASL RESULT
- ROL RESULT+1
- ASL RESULT
- ROL RESULT+1
- ASL RESULT
- ROL RESULT+1
- ASL RESULT
- ROL RESULT+1
- LDA KINBUF,X
- CMP #65
- BCC MORHEX
- SBC #7
- MORHEX
- AND #15
- ADC RESULT
- STA RESULT
- LDA #0
- ADC RESULT+1
- STA RESULT+1
- CPX Keyinlen
- BNE HEXLOP
- ;--------*
- BINHEX
- jsr move2value
- LDA #0
- STA DISLEN
- LDA VALUE+1
- BEQ LOWBYT
- BEQ THEHEX
- LDA HEXTBL,Y
- STA DXSBUF,X
- THEHEX LDA VALUE+1
- AND #15
- LDA HEXTBL,Y
- STA DXSBUF,X
- LOWBYT
- LDA VALUE
- BNE CONT22
- BEQ ONEHEX
- CONT22
- LDA HEXTBL,Y
- STA DXSBUF,X
- ONEHEX
- LDA VALUE
- AND #15
- LDA HEXTBL,Y
- STA DXSBUF,X
- STX DISLEN
- HEXTBL .BYTE '0123456789ABCDEF'
- ;---------*
- DECBIN
- STRDEC
- LDA #0
- STA RESULT
- STA RESULT+1
- DECLOP
- ASL RESULT
- ROL RESULT+1
- LDA RESULT
- LDY RESULT+1
- ASL RESULT
- ROL RESULT+1
- ASL RESULT
- ROL RESULT+1
- ADC RESULT
- STA RESULT
- ADC RESULT+1
- STA RESULT+1
- LDA KINBUF,X
- AND #15
- ADC RESULT
- STA RESULT
- LDA #0
- ADC RESULT+1
- STA RESULT+1
- CPX Keyinlen
- BNE DECLOP
- ;---------*
- BINDEC
- jsr move2value
- LDA #0
- ; SET DISLEN TO ZERO
- STA DISLEN
- CONVRT
- LDA #0
- STA MOD10
- STA MOD10+1
- LDX #16
- DVDELP
- ROL VALUE
- ROL VALUE+1
- ROL MOD10
- ROL MOD10+1
- LDA MOD10
- SBC #10
- LDA MOD10+1
- SBC #0
- BCC CNTMOD
- STY MOD10
- STA MOD10+1
- CNTMOD
- BNE DVDELP
- ROL VALUE
- ROL VALUE+1
- LDA MOD10
- ADC #48
- LDY DISLEN
- BEQ NOSTRE
- INCBUF
- LDA DXSBUF-1,Y
- STA DXSBUF,Y
- BNE INCBUF
- NOSTRE
- STA DXSBUF
- INC DISLEN
- LDA VALUE
- ORA VALUE+1
- BNE CONVRT
- ;------*
- move2value
- lda RESULT
- STA VALUE
- LDA RESULT+1
- STA VALUE+1
-