| |
JackAsser
Registered: Jun 2002 Posts: 2014 |
6502 instruction decoding
Why is it that STA-opcodes always gets an implicit page-crossing penalty in comparison to their LDA counter parts?
F.e.
lda abs,x is 4/5 depending on page crossing
sta abs,x is always 5 independent of page crossing
|
|
... 10 posts hidden. Click here to view all posts.... |
| |
MagerValp
Registered: Dec 2001 Posts: 1078 |
Quoting GrahamA clean way to acknowledge VIC2 IRQs would be LDA $D019 STA $D019.
Or rather LDA #$FF : STA $d019. |
| |
iAN CooG
Registered: May 2002 Posts: 3195 |
I find asl $d019 way simpler, all bits get read/written. |
| |
JackAsser
Registered: Jun 2002 Posts: 2014 |
Quote: I find asl $d019 way simpler, all bits get read/written.
Checking out visual6502.org and the forums there it became clear that the actual instruction decoding is just an internal PLA in the CPU. It takes the current opcode and cycle into an array and get an operation value out which it executes.
I want a dump of this ROM. There is one online but it's obviously totally flawed, and the dude who did it also said he didn't know what lines that were what.
Using the visual6502 one can transcribe it properly, but it's a pain to do it. Anybody did it already? |
| |
MagerValp
Registered: Dec 2001 Posts: 1078 |
Quoting JackAsserUsing the visual6502 one can transcribe it properly, but it's a pain to do it. Anybody did it already?
No me, but I'm also interested in it. It'd make a pretty awesome cycle exact 6502 emulation core. |
| |
JackAsser
Registered: Jun 2002 Posts: 2014 |
Quote: Quoting JackAsserUsing the visual6502 one can transcribe it properly, but it's a pain to do it. Anybody did it already?
No me, but I'm also interested in it. It'd make a pretty awesome cycle exact 6502 emulation core.
Exactly + less code to implement it probably given you implement the ~130 sub operation (compared to 256 special case instruction as we do today more or less) |
| |
Zer0-X Account closed
Registered: Aug 2008 Posts: 78 |
So you're after the table like this (from the "wrong" CPU tho)?:
http://oms.wmhost.com/misc/6502_inst.png
|
| |
chatGPZ
Registered: Dec 2001 Posts: 11386 |
Quote:Exactly + less code to implement it probably given you implement the ~130 sub operation (compared to 256 special case instruction as we do today more or less)
not really... if you look at a typical cycle exact cpu core, it already works with a lookuptable and sub operations very similar to what the cpu does :) |
| |
JackAsser
Registered: Jun 2002 Posts: 2014 |
Quote: So you're after the table like this (from the "wrong" CPU tho)?:
http://oms.wmhost.com/misc/6502_inst.png
Yes, but I have deciphered the die-scan now into a proper table. There are errors though that I must fix first. |
Previous - 1 | 2 - Next |