aslax1.o \
aslax2.o \
aslax3.o \
+ aslax4.o \
asleax1.o \
asleax2.o \
asleax3.o \
+ asleax4.o \
asrax1.o \
asrax2.o \
asrax3.o \
+ asrax4.o \
asreax1.o \
asreax2.o \
asreax3.o \
+ asreax4.o \
axlong.o \
bneg.o \
bpushbsp.o \
shrax1.o \
shrax2.o \
shrax3.o \
+ shrax4.o \
shreax1.o \
shreax2.o \
shreax3.o \
+ shreax4.o \
staspidx.o \
staspp.o \
staxsp.o \
--- /dev/null
+;
+; Ullrich von Bassewitz, 25.07.2001
+;
+; CC65 runtime: Scale the primary register by 16
+;
+
+ .export aslax4, shlax4
+ .importzp tmp1
+
+aslax4:
+shlax4: stx tmp1
+ asl a
+ rol tmp1
+ asl a
+ rol tmp1
+ asl a
+ rol tmp1
+ asl a
+ rol tmp1
+ ldx tmp1
+ rts
+
--- /dev/null
+;
+; Ullrich von Bassewitz, 25.07.2001
+;
+; CC65 runtime: Scale the 32 bit primary register by 16
+;
+
+ .export asleax4, shleax4
+ .importzp sreg, tmp1
+
+asleax4:
+shleax4:
+ stx tmp1
+ ldx #4
+@L1: asl a
+ rol tmp1
+ rol sreg
+ rol sreg+1
+ dex
+ bne @L1
+ ldx tmp1
+ rts
+
--- /dev/null
+;
+; Ullrich von Bassewitz, 25.07.2001
+;
+; CC65 runtime: Scale the primary register by 16
+;
+
+ .export asrax4
+ .importzp tmp1
+
+asrax4: stx tmp1
+ cpx #$80 ; Put bit 7 into carry
+ ror tmp1
+ ror a
+ ldx tmp1
+ cpx #$80
+ ror tmp1
+ ror a
+ ldx tmp1
+ cpx #$80
+ ror tmp1
+ ror a
+ ldx tmp1
+ cpx #$80
+ ror tmp1
+ ror a
+ ldx tmp1
+ rts
+
ror sreg
ror tmp1
ror a
- ldx sreg+1
cpx #$80 ; Get bit 7 into carry
ror sreg+1
ror sreg
ror tmp1
ror a
- ldx sreg+1
cpx #$80 ; Get bit 7 into carry
ror sreg+1
ror sreg
--- /dev/null
+;
+; Ullrich von Bassewitz, 25.07.2001
+;
+; CC65 runtime: Scale the 32 bit primary register by 16
+;
+
+ .export asreax4
+ .importzp sreg, tmp1
+
+asreax4:
+ stx tmp1
+ ldx sreg+1
+ ldy #4
+@L1: cpx #$80 ; Get bit 7 into carry
+ ror sreg+1
+ ror sreg
+ ror tmp1
+ ror a
+ dey
+ bne @L1
+ ldx tmp1
+ rts
+
--- /dev/null
+;
+; Ullrich von Bassewitz, 25.07.2001
+;
+; CC65 runtime: Scale the primary register by 16
+;
+
+ .export shrax4
+ .importzp tmp1
+
+shrax4: stx tmp1
+ lsr tmp1
+ ror a
+ lsr tmp1
+ ror a
+ lsr tmp1
+ ror a
+ lsr tmp1
+ ror a
+ ldx tmp1
+ rts
+
+
--- /dev/null
+;
+; Ullrich von Bassewitz, 25.07.2001
+;
+; CC65 runtime: Scale the 32 bit primary register by 16
+;
+
+ .export shreax4
+ .importzp sreg, tmp1
+
+shreax4:
+ stx tmp1
+ ldx #4
+@L1: lsr sreg+1
+ ror sreg
+ ror tmp1
+ ror a
+ dex
+ bne @L1
+ ldx tmp1
+ rts
+