User Tools

Site Tools


playground:playground

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
playground:playground [2016-02-07 23:34]
matt
playground:playground [2020-06-01 13:00] (current)
Line 1: Line 1:
-;I have slight modified the Macie's routine that is for 3 digits decimal number. +====== PlayGround ======
-;this routine converts 5 digits decimal number (range 0-65535) to equivalent hex number. +
- +
- +
-                !to "dec2hex.prg",cbm +
- +
-                *=$0810 +
- lda #0 +
-  sta lores ;result byteLo +
- sta hires ;result byteHi +
-  lda numA ;load units and tens byte +
- and #$0f ;store +
- sta lores ;units nibble +
-                lda numA ;tens nibble +
- lsr  +
- lsr +
-  lsr +
- lsr +
- sta addr1+1 ;put tens nibble after ldx in adder subroutine +
- lda #$0a ;put 10 after adc opcode in adder subroutine +
-  sta addr2+1 +
- lda #$0 ;2 byte addition +
- sta addr3+1 +
- jsr addr1  +
- lda numB ;load handreds and miles byte +
- pha +
- and #$0f  +
- sta addr1+1 ;put hundreds nibble after ldx... +
- lda #$64 ;put 100 ($64) after adc opcode...  +
-  sta addr2+1 +
- lda #$0 +
- sta addr3+1 +
- jsr addr1 +
- pla +
- lsr +
- lsr +
- lsr +
- lsr +
- sta addr1+1     ;put thousands nibble after ldx... +
- lda #$e8 ;add 1000, first add lobyte $e8 +
- sta addr2+1 +
- lda #$03 ;...after add hibyte $03 +
- sta addr3+1 +
- jsr addr1 +
- lda numC ;load tens of thousands +
- and #$0f +
- sta addr1+1 ;add 10000 ($2710) +
- lda #$10 +
- sta addr2+1 +
- lda #$27 +
- sta addr3+1 +
- jsr addr1 +
- rts +
-;adder subroutine +
-        addr1   ldx #00 ;numbers of additions +
- clc +
-        loop lda lores +
-        addr2 adc #00 ;$a, $64; $e8, $10 +
- sta lores +
- lda hires +
-        addr3 adc #00 ;$0, $03, $27 +
- sta hires +
- dex +
- bne loop +
- rts +
- ;for 65535  +
-    numA !byte 00 ;numA=35  +
-    numB !byte 00 ;numB=55 +
-    numC !byte 00 ;numC=06 +
-    lores !byte 00  +
-    hires !byte 00 +
  
playground/playground.txt · Last modified: 2020-06-01 13:00 (external edit)