1
0
mirror of https://github.com/pevans/erc-c.git synced 2024-11-17 15:07:10 +00:00
Commit Graph

437 Commits

Author SHA1 Message Date
Peter Evans
0ccabda71e Rewrite SBC logic
The carry handling was incorrect; carry is set if we went below zero,
but bit 7 is not enough to determine that. It follows that negative
handling needed to be modified accordingly. Overflow handling was also
incorrect.
2018-03-30 20:07:24 -05:00
Peter Evans
07a8a385f5 Remove log statements 2018-03-30 20:06:59 -05:00
Peter Evans
54708e5110 Switch back to >= 2018-03-30 18:49:32 -05:00
Peter Evans
a23c7321f5 Don't do certain operations if the drive is offline 2018-03-30 16:26:24 -05:00
Peter Evans
d129ffed99 Logging on STA instructions 2018-03-30 16:10:15 -05:00
Peter Evans
523b9c4a03 Several changes...
1. We have much more logging.
2. We were not properly turning off drives when we would get called with
   C0x8.
3. We now roll over sector pos if we are greater than ENC_ETRACK.
4. We now reset sector pos when we step.
2018-03-30 16:07:58 -05:00
Peter Evans
d2047457e9 Use log_crit() instead of log_critical()
This change also removes the former log_critical and log_error macros.
2018-03-29 21:45:25 -05:00
Peter Evans
7ca099d0d0 Open log file rather than use stdout 2018-03-29 21:42:38 -05:00
Peter Evans
5d55d5b258 Use a bitwise-and to determine carry
A bitwise-and is what we do in most (all?) other cases; it's a bit
jarring to read the current logic.
2018-03-26 23:10:57 -05:00
Peter Evans
8aef335f25 Remove unnecessary zero page code
This is handled in the zp_read/write functions in apple2.mem.c
2018-03-26 20:59:24 -05:00
Peter Evans
d9be1d6ab2 We need to return from aux, or write to aux, immediately
If we wait until later in the function, we may get caught up in the
check for ROM.
2018-03-26 20:51:10 -05:00
Peter Evans
92ac77e8f5 Sort read switches 2018-03-26 20:48:13 -05:00
Peter Evans
e51e643294 Force $C059 to do nothing 2018-03-26 20:47:41 -05:00
Peter Evans
b2e9198ede Defensive conditionals 2018-03-26 20:46:55 -05:00
Peter Evans
81bcc7d973 We also need to check ACC in ASL/LSR/ROL/ROR
And, possibly more importantly--opcode is not a bool.
2018-03-25 20:34:12 -05:00
Peter Evans
3439ec51a8 inc and dec should work with a zero-address
Just checking if (cpu->eff_addr) is not sufficient. We need to check the
address mode; only increment or decrement the A register if the mode is
literally ACC.
2018-03-25 19:42:55 -05:00
Peter Evans
64306fa5a6 Add hidump, hires_dump commands 2018-03-25 19:39:00 -05:00
Peter Evans
64afcb2040 Rewrite phaser to use state transitions, whole phase states
By whole phase states, I mean we no longer track if more than one phase
is active.
2018-03-23 19:41:01 -05:00
Peter Evans
2870bc03bc Remove option flags; remove unnecessary --flash option 2018-03-21 15:26:58 -05:00
Peter Evans
a461194a63 More clearly check opposite phases
And prev should not be checked
2018-03-21 15:11:03 -05:00
Peter Evans
443f9d1a01 Only zero page and stack should be affected by ALTZP 2018-03-21 15:09:40 -05:00
Peter Evans
474104085c Reorganize encoded sizes/routines to align with reference nibble output
(This is comparing to the output that we see from dsk2nib.)
2018-03-20 14:06:26 -05:00
Peter Evans
f5e0de5bbc Reverting to just black/white color for now
Only while I work on some other issues with disk loading
2018-03-19 19:02:46 -05:00
Peter Evans
2baa2fac75 Significant rewrites and slightly better understanding 2018-03-18 00:15:55 -05:00
Peter Evans
82906e74f8 Decrease frame rate per second 2018-03-18 00:01:40 -05:00
Peter Evans
2eccb288a4 Update to use NTSC Corrected color values 2018-03-14 23:50:53 -05:00
Peter Evans
bff83bc315 Implement first pass at hires draw
Note: it's a hot mess
2018-03-14 00:57:50 -05:00
Peter Evans
47bbed1399 Add color tables, row table 2018-03-14 00:05:26 -05:00
Peter Evans
ec00bb2a87 It's the columns which matter, not rows 2018-03-13 16:14:38 -05:00
Peter Evans
4d34663435 Add hires graphics file; draw hires graphics 2018-03-13 16:08:31 -05:00
Peter Evans
a5c777b3e9 Remove --size flag for now
I may add an option for full size in the future
2018-03-13 15:22:47 -05:00
Peter Evans
851bc85860 We should print the final line if from is still >= to
This can happen if the region of to - from is not cleanly divisible by
16.
2018-03-13 15:17:33 -05:00
Peter Evans
ed32f73e98 Use another pointer to retain the original address to free
This also resolves an issue where we weren't attempting to free the
duplicated string when returning early.
2018-03-13 11:00:44 -05:00
Peter Evans
a243ed3d35 Add docblock comments 2018-03-13 00:53:46 -05:00
Peter Evans
f33f9cd493 Remove unnecessary check if tok == NULL
This also corrects a formatting error (no space between the rparen of
the if and the lbrace of the code block).
2018-03-13 00:33:32 -05:00
Peter Evans
090307f4fe Removed unnecessary code 2018-03-13 00:28:24 -05:00
Peter Evans
dc8a431f87 Always notify the screen of a refresh required 2018-03-13 00:13:59 -05:00
Peter Evans
5dcc25f5eb Reject -1 rows and columns 2018-03-12 00:33:22 -05:00
Peter Evans
543e3d0b73 Use uint32_t for all fields 2018-03-12 00:33:08 -05:00
Peter Evans
97865e9589 Subtract 0x400 for the correct offset 2018-03-12 00:32:42 -05:00
Peter Evans
e868718f31 (No, really, use the color blue) 2018-03-11 23:48:40 -05:00
Peter Evans
df960220ef First crack at lo-res graphics 2018-03-11 23:28:28 -05:00
Peter Evans
5a43ca9a7a Return random data in read contexts
This applies only to addresses which aren't meant to return meaningful
data.
2018-03-10 22:36:31 -06:00
Peter Evans
ce6f3c5835 Return bit 7 high if we set a flag on 2018-03-10 22:21:03 -06:00
Peter Evans
550eab742e Move hdump into correctly sorted slot 2018-03-09 16:51:12 -06:00
Peter Evans
74e8a30a4c Disassemble flag now works as intended 2018-03-09 16:46:04 -06:00
Peter Evans
87c7aa9249 Add hexdump function for vm_segment 2018-03-09 16:45:20 -06:00
Peter Evans
1ff5d17f19 Add hexdump command 2018-03-09 16:44:53 -06:00
Peter Evans
267171ea4a Change to option_open_file(), allow any file mode 2018-03-09 16:44:20 -06:00
Peter Evans
1235197418 Only fprintf if we know stream is not NULL 2018-03-07 21:24:29 -06:00