mirror of
https://github.com/fadden/6502bench.git
synced 2024-09-11 20:54:37 +00:00
100 lines
2.1 KiB
ArmAsm
100 lines
2.1 KiB
ArmAsm
|
; Copyright 2018 faddenSoft. All Rights Reserved.
|
||
|
; See the LICENSE.txt file for distribution terms (Apache 2.0).
|
||
|
;
|
||
|
; Basic tests for 6502.
|
||
|
;
|
||
|
; Assembler: Merlin 32
|
||
|
|
||
|
org $1000
|
||
|
|
||
|
; Basic operand formats. Show first set as hex, second as decimal,
|
||
|
; third as sign-extended decimal, fourth as binary.
|
||
|
lda $01
|
||
|
lda $0102
|
||
|
lda $fe
|
||
|
lda $feff
|
||
|
|
||
|
lda $01
|
||
|
lda $0102
|
||
|
lda $fe
|
||
|
lda $feff
|
||
|
|
||
|
lda $01
|
||
|
lda $0102
|
||
|
lda $fe
|
||
|
lda $feff
|
||
|
|
||
|
lda $01
|
||
|
lda $0102
|
||
|
lda $fe
|
||
|
lda $feff
|
||
|
|
||
|
jmp :skipdata
|
||
|
|
||
|
; Now hex/decimal/sdec/binary, each with .dd1/.dd2/.dd3/.dd4
|
||
|
hex 01010201020301020304
|
||
|
hex 01010201020301020304
|
||
|
hex 01010201020301020304
|
||
|
hex 01010201020301020304
|
||
|
|
||
|
; bonus round for sdec
|
||
|
hex fffffefffefdfffefdfc
|
||
|
|
||
|
:skipdata
|
||
|
|
||
|
; Convert these to ASCII; requires editing file. The code generator
|
||
|
; should display some of these as hex.
|
||
|
lda #$68
|
||
|
lda $68
|
||
|
lda: $0068
|
||
|
|
||
|
lda #$1f
|
||
|
lda #$20
|
||
|
lda #$22
|
||
|
lda #$27
|
||
|
lda #$7e
|
||
|
lda #$7f
|
||
|
lda #$80
|
||
|
lda #$9f
|
||
|
lda #$a0
|
||
|
lda #$a2
|
||
|
lda #$a7
|
||
|
lda #$fe
|
||
|
lda #$ff
|
||
|
|
||
|
jmp end
|
||
|
|
||
|
; Continuing with ASCII
|
||
|
:ascii
|
||
|
dfb $68
|
||
|
dfb $80
|
||
|
dw $6868
|
||
|
dfb $80
|
||
|
|
||
|
|
||
|
; Format first set as address, second set as symbol.
|
||
|
dw :skipdata
|
||
|
adr :skipdata
|
||
|
dfb >:skipdata,:skipdata ;format as big-endian address
|
||
|
|
||
|
dfb :ascii
|
||
|
dfb >:ascii
|
||
|
dw :ascii
|
||
|
adr :ascii
|
||
|
adrl :ascii
|
||
|
dfb >:ascii,:ascii ;format as big-endian symbol
|
||
|
|
||
|
; Merlin 1.0 has trouble with "DFB '{'". Test it and the neighbors.
|
||
|
dfb '['
|
||
|
dfb $7b
|
||
|
dfb $7c
|
||
|
dfb $7d
|
||
|
dfb ','
|
||
|
dfb "["
|
||
|
dfb $fb
|
||
|
dfb $fc
|
||
|
dfb $fd
|
||
|
dfb ","
|
||
|
|
||
|
end rts
|