[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
6502 test suite
- Subject: 6502 test suite
- From: BLuRry <brendan.robert@gmail.com>
- Date: Wed, 12 Sep 2012 21:49:04 -0700 (PDT)
- Complaints-to: groups-abuse@google.com
- Injection-date: Thu, 13 Sep 2012 04:49:04 +0000
- Injection-info: glegroupsg2000goo.googlegroups.com; posting-host=70.123.154.97; posting-account=HyIOQgoAAAAfAUGOevdCSBhPYcDSPtM9
- Newsgroups: comp.sys.apple2
- User-agent: G2/1.0
I was pointed to this 6502 processor test program:
http://forum.6502.org/viewtopic.php?f=2&t=2241
I've written a test harness to lash this up to Jace's CPU emulation and also enable CPU trace and the memory spy module. So far things get really weird around BRK, PHP and PLP combinations. For example the infinite loop at 3e69 indicates the emulation did something wrong that the program asserts should work differently. Any ideas on this one?
53 FB 4F 01FC .VRBDI.C 3e39 : TAX
53 53 4F 01FC .VRBDI.C 3e3a : PLA
4A 53 4F 01FD .VRBDI.C 3e3b : INX
4A 54 4F 01FD .VRBDI.C 3e3c : EOR #$aa
E0 54 4F 01FD NVRBDI.C 3e3e : RTS
E0 54 4F 01FF NVRBDI.C 12f6 : PHP
E0 54 4F 01FE NVRBDI.C 12f7 : DEY
E0 54 4E 01FE .VRBDI.C 12f8 : DEY
E0 54 4D 01FE .VRBDI.C 12f9 : DEY
E0 54 4C 01FE .VRBDI.C 12fa : PLP
E0 54 4C 01FF NVRBDI.C 12fb : BEQ $12fb
E0 54 4C 01FF NVRBDI.C 12fd : BPL $12fd
E0 54 4C 01FF NVRBDI.C 12ff : BCC $12ff
E0 54 4C 01FF NVRBDI.C 1301 : BVC $1301
E0 54 4C 01FF NVRBDI.C 1303 : CMP #$e0
E0 54 4C 01FF .VRBDIZC 1305 : BNE $1305
E0 54 4C 01FF .VRBDIZC 1307 : CPX #$54
E0 54 4C 01FF .VRBDIZC 1309 : BNE $1309
E0 54 4C 01FF .VRBDIZC 130b : CPY #$4c
E0 54 4C 01FF .VRBDIZC 130d : BNE $130d
E0 54 4C 01FF .VRBDIZC 130f : TSX
E0 FF 4C 01FF NVRBDI.C 1310 : CPX #$ff
E0 FF 4C 01FF .VRBDIZC 1312 : BNE $1312
E0 FF 4C 01FF .VRBDIZC 1314 : LDA #$00
00 FF 4C 01FF .VRBDIZC 1316 : PHA
00 FF 4C 01FE .VRBDIZC 1317 : PLP
00 FF 4C 01FF ..RB.... 1318 : LDA #$42
42 FF 4C 01FF ..RB.... 131a : LDX #$52
42 52 4C 01FF ..RB.... 131c : LDY #$4b
42 52 4B 01FF ..RB.... 131e : BRK #$88
42 52 4B 01FC ..R..... 3e4a : PHP
42 52 4B 01FB ..R..... 3e4b : DEY
42 52 4A 01FB ..R..... 3e4c : DEY
42 52 49 01FB ..R..... 3e4d : DEY
42 52 48 01FB ..R..... 3e4e : CMP #$42
42 52 48 01FB ..R...ZC 3e50 : BNE $3e50
42 52 48 01FB ..R...ZC 3e52 : CPX #$52
42 52 48 01FB ..R...ZC 3e54 : BNE $3e54
42 52 48 01FB ..R...ZC 3e56 : CPY #$48
42 52 48 01FB ..R...ZC 3e58 : BNE $3e58
42 52 48 01FB ..R...ZC 3e5a : STA $5d
42 52 48 01FB ..R...ZC 3e5c : STX $5e
42 52 48 01FB ..R...ZC 3e5e : TSX
42 FB 48 01FB N.R....C 3e5f : LDA $0102,X
30 FB 48 01FB ..R....C 3e62 : CMP #$30
30 FB 48 01FB ..R...ZC 3e64 : BNE $3e64
30 FB 48 01FB ..R...ZC 3e66 : PLA
20 FB 48 01FC ..R....C 3e67 : CMP #$34
20 FB 48 01FC N.R..... 3e69 : BNE $3e69
20 FB 48 01FC N.R..... 3e69 : BNE $3e69
20 FB 48 01FC N.R..... 3e69 : BNE $3e69