mirror of
https://github.com/TomHarte/CLK.git
synced 2026-04-21 17:16:44 +00:00
Attempts to complete all addressing modes.
So, if bugs didn't exist, it'd just be members of the Operation enum to go.
This commit is contained in:
@@ -424,21 +424,17 @@ struct CPU::WDC65816::ProcessorStorageConstructor {
|
||||
static void direct_indirect_indexed(AccessType type, bool is8bit, const std::function<void(MicroOp)> &target) {
|
||||
target(CycleFetchIncrementPC); // DO.
|
||||
|
||||
target(OperationConstructDirectIndirect);
|
||||
target(OperationConstructDirect);
|
||||
target(CycleFetchPC); // IO.
|
||||
|
||||
target(CycleFetchIncrementData); // AAL.
|
||||
target(CycleFetchData); // AAH.
|
||||
|
||||
target(OperationConstructDirectIndirectIndexed);
|
||||
target(OperationConstructAbsoluteYRead);
|
||||
target(CycleFetchIncorrectDataAddress); // IO.
|
||||
|
||||
read_write(type, is8bit, target);
|
||||
}
|
||||
// TODO: verify, especially re: false addresses.
|
||||
// i.e. it currently looks to me superficially as though I can reuse
|
||||
// OperationConstructDirectIndirect here, but writing the proper
|
||||
// interpreter will help to clarify.
|
||||
|
||||
// 14. Direct Indirect Indexed Long; [d], y.
|
||||
static void direct_indirect_indexed_long(AccessType type, bool is8bit, const std::function<void(MicroOp)> &target) {
|
||||
|
||||
Reference in New Issue
Block a user