2022-11-15 17:51:52 +00:00
|
|
|
%import textio
|
2022-11-28 22:07:07 +00:00
|
|
|
%zeropage dontuse
|
|
|
|
|
2022-11-29 19:09:10 +00:00
|
|
|
|
|
|
|
; base level code size: $279
|
|
|
|
|
|
|
|
|
2022-10-22 11:33:35 +00:00
|
|
|
main {
|
2022-11-28 18:22:35 +00:00
|
|
|
bool[1] expected = [ true ]
|
2022-11-28 22:07:07 +00:00
|
|
|
uword[1] expectedw = [4242 ]
|
2022-11-28 18:22:35 +00:00
|
|
|
|
|
|
|
sub get() -> bool {
|
2022-11-29 19:09:10 +00:00
|
|
|
ubyte xx
|
|
|
|
xx = 1
|
2022-11-28 22:07:07 +00:00
|
|
|
%asm {{
|
|
|
|
stz P8ZP_SCRATCH_W1
|
|
|
|
stz P8ZP_SCRATCH_W1+1
|
|
|
|
stz P8ZP_SCRATCH_W2
|
|
|
|
stz P8ZP_SCRATCH_W2+1
|
|
|
|
stz P8ZP_SCRATCH_REG
|
|
|
|
stz P8ZP_SCRATCH_B1
|
|
|
|
}}
|
2022-11-29 19:09:10 +00:00
|
|
|
return xx
|
2022-11-28 22:07:07 +00:00
|
|
|
}
|
|
|
|
sub same() -> bool {
|
2022-11-29 19:09:10 +00:00
|
|
|
ubyte xx
|
|
|
|
xx = 1
|
2022-11-28 22:07:07 +00:00
|
|
|
%asm {{
|
|
|
|
stz P8ZP_SCRATCH_W1
|
|
|
|
stz P8ZP_SCRATCH_W1+1
|
|
|
|
stz P8ZP_SCRATCH_W2
|
|
|
|
stz P8ZP_SCRATCH_W2+1
|
|
|
|
stz P8ZP_SCRATCH_REG
|
|
|
|
stz P8ZP_SCRATCH_B1
|
|
|
|
}}
|
2022-11-29 19:09:10 +00:00
|
|
|
return xx
|
2022-11-28 18:22:35 +00:00
|
|
|
}
|
|
|
|
|
2022-11-28 22:07:07 +00:00
|
|
|
sub getw() -> uword {
|
2022-11-29 19:09:10 +00:00
|
|
|
uword xx=4242
|
2022-11-28 22:07:07 +00:00
|
|
|
%asm {{
|
|
|
|
stz P8ZP_SCRATCH_W1
|
|
|
|
stz P8ZP_SCRATCH_W1+1
|
|
|
|
stz P8ZP_SCRATCH_W2
|
|
|
|
stz P8ZP_SCRATCH_W2+1
|
|
|
|
stz P8ZP_SCRATCH_REG
|
|
|
|
stz P8ZP_SCRATCH_B1
|
|
|
|
}}
|
2022-11-29 19:09:10 +00:00
|
|
|
return xx
|
2022-11-28 22:07:07 +00:00
|
|
|
}
|
|
|
|
sub samew() -> uword {
|
2022-11-29 19:09:10 +00:00
|
|
|
uword xx=4242
|
|
|
|
%asm {{
|
|
|
|
stz P8ZP_SCRATCH_W1
|
|
|
|
stz P8ZP_SCRATCH_W1+1
|
|
|
|
stz P8ZP_SCRATCH_W2
|
|
|
|
stz P8ZP_SCRATCH_W2+1
|
|
|
|
stz P8ZP_SCRATCH_REG
|
|
|
|
stz P8ZP_SCRATCH_B1
|
|
|
|
}}
|
|
|
|
return xx
|
|
|
|
}
|
|
|
|
sub differentw() -> uword {
|
|
|
|
uword xx=9999
|
2022-11-28 22:07:07 +00:00
|
|
|
%asm {{
|
|
|
|
stz P8ZP_SCRATCH_W1
|
|
|
|
stz P8ZP_SCRATCH_W1+1
|
|
|
|
stz P8ZP_SCRATCH_W2
|
|
|
|
stz P8ZP_SCRATCH_W2+1
|
|
|
|
stz P8ZP_SCRATCH_REG
|
|
|
|
stz P8ZP_SCRATCH_B1
|
|
|
|
}}
|
2022-11-29 19:09:10 +00:00
|
|
|
return xx
|
2022-11-28 22:07:07 +00:00
|
|
|
}
|
|
|
|
sub one() -> ubyte {
|
2022-11-29 19:09:10 +00:00
|
|
|
ubyte xx=1
|
2022-11-28 22:07:07 +00:00
|
|
|
%asm {{
|
|
|
|
stz P8ZP_SCRATCH_W1
|
|
|
|
stz P8ZP_SCRATCH_W1+1
|
|
|
|
stz P8ZP_SCRATCH_W2
|
|
|
|
stz P8ZP_SCRATCH_W2+1
|
|
|
|
stz P8ZP_SCRATCH_REG
|
|
|
|
stz P8ZP_SCRATCH_B1
|
|
|
|
}}
|
2022-11-29 19:09:10 +00:00
|
|
|
return xx
|
2022-11-28 22:07:07 +00:00
|
|
|
}
|
|
|
|
|
2022-11-28 18:22:35 +00:00
|
|
|
sub start() {
|
2022-11-29 19:09:10 +00:00
|
|
|
if getw() == samew()
|
2022-11-28 22:07:07 +00:00
|
|
|
txt.print("ok\n")
|
|
|
|
else
|
|
|
|
txt.print("fail\n")
|
|
|
|
|
2022-11-29 19:09:10 +00:00
|
|
|
if samew() == getw()
|
2022-11-28 22:07:07 +00:00
|
|
|
txt.print("ok\n")
|
|
|
|
else
|
|
|
|
txt.print("fail\n")
|
|
|
|
|
2022-11-29 19:09:10 +00:00
|
|
|
if getw() != samew()
|
2022-11-28 22:07:07 +00:00
|
|
|
txt.print("fail\n")
|
|
|
|
else
|
|
|
|
txt.print("ok\n")
|
|
|
|
|
2022-11-29 19:09:10 +00:00
|
|
|
if samew() != getw()
|
2022-11-28 22:07:07 +00:00
|
|
|
txt.print("fail\n")
|
|
|
|
else
|
|
|
|
txt.print("ok\n")
|
|
|
|
|
|
|
|
|
2022-11-29 19:09:10 +00:00
|
|
|
if getw() == differentw()
|
2022-11-28 22:07:07 +00:00
|
|
|
txt.print("fail\n")
|
|
|
|
else
|
|
|
|
txt.print("ok\n")
|
|
|
|
|
2022-11-29 19:09:10 +00:00
|
|
|
if differentw() == getw()
|
2022-11-28 22:07:07 +00:00
|
|
|
txt.print("fail\n")
|
|
|
|
else
|
|
|
|
txt.print("ok\n")
|
|
|
|
|
2022-11-29 19:09:10 +00:00
|
|
|
if getw() != differentw()
|
2022-11-28 22:07:07 +00:00
|
|
|
txt.print("ok\n")
|
|
|
|
else
|
|
|
|
txt.print("fail\n")
|
|
|
|
|
2022-11-29 19:09:10 +00:00
|
|
|
if differentw() != getw()
|
2022-11-28 22:07:07 +00:00
|
|
|
txt.print("ok\n")
|
|
|
|
else
|
|
|
|
txt.print("fail\n")
|
|
|
|
|
2022-11-28 18:22:35 +00:00
|
|
|
}
|
2022-09-18 14:04:49 +00:00
|
|
|
}
|