Implement aslax7/shlax7/asrax7/shrax7
This commit is contained in:
21
libsrc/runtime/aslax7.s
Normal file
21
libsrc/runtime/aslax7.s
Normal file
@@ -0,0 +1,21 @@
|
||||
;
|
||||
; Miloslaw Smyk, 2024
|
||||
;
|
||||
; CC65 runtime: Scale the primary register by 128, unsigned
|
||||
;
|
||||
|
||||
.export shlax7, aslax7
|
||||
|
||||
aslax7:
|
||||
shlax7: ; XXXXXXXL AAAAAAAl
|
||||
tay
|
||||
txa
|
||||
lsr ; XXXXXXXL -> 0XXXXXXX, L->C
|
||||
tya
|
||||
ror ; AAAAAAAl -> LAAAAAAA, l->C
|
||||
tax
|
||||
lda #$00 ; LAAAAAAA 00000000
|
||||
ror ; LAAAAAAA l0000000
|
||||
rts
|
||||
|
||||
; 10 bytes, 16 cycles + rts
|
||||
Reference in New Issue
Block a user