1
0
mirror of https://github.com/pevans/erc-c.git synced 2024-09-29 11:55:01 +00:00
Commit Graph

273 Commits

Author SHA1 Message Date
Peter Evans
e23a3e4b63 Use macro definitions for track/sector length 2018-02-04 14:19:40 -06:00
Peter Evans
64364d91ad Remove unnecessary for loop 2018-02-04 14:15:24 -06:00
Peter Evans
463a9ba268 Handle all phase cases (zero and non-zero) 2018-02-04 01:11:30 -06:00
Peter Evans
1245ddec55 Make encode/decode more testable with return codes 2018-02-04 00:21:39 -06:00
Peter Evans
8009a33bd4 Use int return for error code 2018-02-04 00:06:22 -06:00
Peter Evans
2bdc921b76 Add missing docblocks 2018-02-03 21:56:27 -06:00
Peter Evans
67f943d891 When encoded, the track size is larger than 4k 2018-02-03 21:18:07 -06:00
Peter Evans
a6c1564747 Add fwrite function, support for streams and types 2018-02-03 20:50:08 -06:00
Peter Evans
2dd21f1487 Add image type, image segment 2018-02-03 18:10:29 -06:00
Peter Evans
c010c10ce2 Add missing docblocks 2018-02-03 17:46:56 -06:00
Peter Evans
10d13f755c Document the pseudo-instruction "bad" 2018-02-03 17:44:41 -06:00
Peter Evans
5ac2fbdbee Add new decode functions, flesh out sector code 2018-02-03 00:23:57 -06:00
Peter Evans
d2e21b55c4 Implement the sector decode function
This was a bear to do, and the product being committed is probably my
third (or fourth?) try.
2018-02-02 17:19:38 -06:00
Peter Evans
fadf5a9782 Add decode...code 2018-02-01 18:41:01 -06:00
Peter Evans
323803866a Include better documentation of otherwise grumpy functions 2018-01-31 15:58:32 -06:00
Peter Evans
98c2ef16cc Add encode function for nib 2018-01-31 15:40:39 -06:00
Peter Evans
4943d66e8c Correct typo so it's clear this is a get OOB 2018-01-31 15:40:06 -06:00
Peter Evans
c031822063 Use nibbilized size for dest; allow offset to overflow 2018-01-31 14:28:29 -06:00
Peter Evans
8a53e02f00 Rename to enc.c, add header file 2018-01-31 00:09:07 -06:00
Peter Evans
b09ca2dae5 Reword comment 2018-01-30 18:55:23 -06:00
Peter Evans
5c7dbb4cfe My first crack at some code for nibblization 2018-01-30 16:30:23 -06:00
Peter Evans
b2bfee7f96 The SLOTCXROM switch seems to work opposite
Which seems weird, but I've verified this in some other places.
2018-01-29 00:30:12 -06:00
Peter Evans
418688cd15 Lock disk drives during disassembly 2018-01-28 18:06:14 -06:00
Peter Evans
33b44d1a70 selected_drive will now have a default value (of drive1) 2018-01-27 21:53:12 -06:00
Peter Evans
2c3d6a4dfa Reimplement idx and idy to use 16-bit addresses
While I have found some conflicting details on how this should be done,
it seems pretty clear to me that IDX and IDY work with 16-bit addresses,
not 8-bit. The inability to do so was preventing us from probing
peripheral ROM (e.g. at $C705, for the disk controller).
2018-01-27 19:54:55 -06:00
Peter Evans
4165c1cefc Make idx, idy clearer
I'm still not confident this is how it _should_ work, but I have found
conflicting accounts online for the behavior of these two modes. The
current code is what allows the Apple II to bootstrap as it should.
2018-01-27 13:04:19 -06:00
Peter Evans
76e4d3797f By default SLOTCXROM should be high 2018-01-26 22:01:46 -06:00
Peter Evans
ca5276cb6b It turns out we don't use carry for addr modes.
This fix actually corrects a rather irritating bug where the Apple ][
logo was displaying one-off--e.g., as "pple ][D".
2018-01-26 21:18:42 -06:00
Peter Evans
9c0e01ecd2 Add drive phases, switches for control and i/o 2018-01-26 19:49:19 -06:00
Peter Evans
e901bcf54d Add docblock comments 2018-01-25 14:12:49 -06:00
Peter Evans
217b27b040 Handle inversed text 2018-01-24 20:05:47 -06:00
Peter Evans
2ae272af3a Stop flickering issue by clearing before drawing 2018-01-24 20:04:53 -06:00
Peter Evans
d581194bbc Add apple text functions and refactor draw logic for text 2018-01-24 16:11:08 -06:00
Peter Evans
6069ab4d1b Add inverse font 2018-01-24 14:26:28 -06:00
Peter Evans
cfee8baf25 Refresh once every thirtieth of a second
And also refresh on keypress
2018-01-23 23:14:26 -06:00
Peter Evans
882cf2c166 Comment out cycles 2018-01-23 21:41:43 -06:00
Peter Evans
9f518d5141 We should not resolv the address a second time 2018-01-23 21:41:30 -06:00
Peter Evans
1751a7af1f Don't try to call resolv() if resolv is NULL 2018-01-23 21:18:42 -06:00
Peter Evans
9215600148 Don't attempt to render a glyph if render is NULL 2018-01-23 16:09:27 -06:00
Peter Evans
766aea9c96 Change dbuf switches to work off correct addresses 2018-01-23 15:51:06 -06:00
Peter Evans
8f516db42b Remove arbitrary counter and allow escape to exit 2018-01-23 15:04:11 -06:00
Peter Evans
775a145480 Rework screen display logic for more efficiency 2018-01-23 14:52:16 -06:00
Peter Evans
b5e1e09a35 Bump up counter by a ton 2018-01-22 21:43:18 -06:00
Peter Evans
b97af6cb16 Disable active refresh 2018-01-22 21:43:01 -06:00
Peter Evans
47d7483297 Disable usleep delay for now 2018-01-22 21:42:42 -06:00
Peter Evans
e0b4fd27e8 Better logging 2018-01-22 21:42:30 -06:00
Peter Evans
56433e2ebe Show nothing if no value is associated with an instruction 2018-01-22 12:31:19 -06:00
Peter Evans
945bf23f22 Use correct default status and memory mode 2018-01-21 21:33:12 -06:00
Peter Evans
c2debec4d3 Make output more compact 2018-01-21 21:32:43 -06:00
Peter Evans
ef7977c18b Only set or unset DHIRES if IOUDIS is on 2018-01-21 21:32:22 -06:00