Thomas Harte
|
e4f04d0977
|
Merge branch 'master' into AYFidelity
|
2017-08-11 14:41:08 -04:00 |
|
Thomas Harte
|
0f75525640
|
Merge pull request #187 from TomHarte/CRCErrors
Extends the built-in [M]FM encoder to be able to produce incorrect CRC values, and adjusts the CPC .DSK handler to request them when appropriate
|
2017-08-11 14:34:31 -04:00 |
|
Thomas Harte
|
edb088526f
|
Simplified slightly, and updated TODO as to still-missing functionality.
|
2017-08-11 14:33:34 -04:00 |
|
Thomas Harte
|
80ebc63101
|
Updated the SSD file format container to specify sector sizes, now that it's no longer implicit.
|
2017-08-11 14:30:35 -04:00 |
|
Thomas Harte
|
cf1403bc79
|
Increased documentation.
|
2017-08-11 14:27:07 -04:00 |
|
Thomas Harte
|
fcf63a7547
|
Expands the [M]FM encoder to respect some new Sector flags: it will now wilfully make CRC errors, omit data, include data that is different than the ID's declared length, write deleted data, and can be commanded as to header/data gaps and what should be within them. All based around expanding towards the needs for reproduction of the CPC's .DSK file format.
|
2017-08-11 14:24:50 -04:00 |
|
Thomas Harte
|
9c0b75faba
|
Merge pull request #186 from TomHarte/CPCTyper
Introduces typer support for the Amstrad CPC.
|
2017-08-11 12:35:43 -04:00 |
|
Thomas Harte
|
1f2bfc9581
|
Ensured tape loading really begins.
|
2017-08-11 12:30:36 -04:00 |
|
Thomas Harte
|
14ab03d1e0
|
Added a further fallback: if all files have an extension but one doesn't, take that one.
|
2017-08-11 12:27:50 -04:00 |
|
Thomas Harte
|
3831fbaca2
|
Ensured the ZX80 and '81 also provide the necessary hook for destruction.
|
2017-08-11 12:11:01 -04:00 |
|
Thomas Harte
|
1d8edf58dd
|
Ensured that a virtual destructor is declared, so that the various automatically-generated real constructors get in on the action.
|
2017-08-11 12:07:48 -04:00 |
|
Thomas Harte
|
4785e316ff
|
Now with exposition.
|
2017-08-11 11:36:03 -04:00 |
|
Thomas Harte
|
44da9de5b0
|
Tweaked typing timing expectations.
|
2017-08-11 11:35:28 -04:00 |
|
Thomas Harte
|
4ecd093891
|
Fixed test for termination of a key sequence; the previous error will have seen this reduce all multi-key sequences to just the one, and expand single-key sequences to "probably" two, posting an out-of-bounds code to the machine at completion.
|
2017-08-11 11:35:14 -04:00 |
|
Thomas Harte
|
dd4bc87d52
|
Fixed: should be a full-path #ifdef guard, given that this is one of the classes named relative to its namespace.
|
2017-08-11 11:21:33 -04:00 |
|
Thomas Harte
|
570d25214e
|
Made an initial attempt at typer support for the CPC.
|
2017-08-11 11:21:07 -04:00 |
|
Thomas Harte
|
f0b7e58968
|
Merge pull request #185 from TomHarte/CPMCatalogue
Introduces a CP/M catalogue parser, as a basic for the CPC's static analyser
|
2017-08-11 11:00:49 -04:00 |
|
Thomas Harte
|
0411b51582
|
Added an attempt to deal with 16-bit allocation units, and to ensure middle-of-file holes are respected.
|
2017-08-11 10:59:37 -04:00 |
|
Thomas Harte
|
dea782cff9
|
Added a "yeah, I don't know" fallback.
|
2017-08-11 10:47:45 -04:00 |
|
Thomas Harte
|
388dd99762
|
Advanced this just enough to suggest a loading command for most things.
|
2017-08-11 10:47:12 -04:00 |
|
Thomas Harte
|
026101a268
|
Killed logic_extents_per_physical, since I don't know how to handle it, and instituted tracks, to allow a decision about short versus long allocation units.
|
2017-08-11 10:46:50 -04:00 |
|
Thomas Harte
|
734099a956
|
Threw a sector cache into my MFM parser, in an attempt to cut down analysis costs. Also made it aware of multiple heads.
|
2017-08-11 10:29:13 -04:00 |
|
Thomas Harte
|
6be5851484
|
Cleaned up.
|
2017-08-10 22:34:29 -04:00 |
|
Thomas Harte
|
994179f188
|
Taking a whole bunch of guesses, this might be correct.
|
2017-08-10 22:33:08 -04:00 |
|
Thomas Harte
|
6a65c7a52a
|
Started working on a CPC-oriented analyser; for now I just want to be able to make a good guess at the appropriate file to load from a disk. As it turns out, the CPC simply adopts the CP/M format, so a generic parser is appropriate. This is its beginning.
|
2017-08-10 17:10:21 -04:00 |
|
Thomas Harte
|
0d2d3ea17c
|
Merge branch 'master' into DeferredVideo
|
2017-08-10 16:01:02 -04:00 |
|
Thomas Harte
|
5d374ebb18
|
Merge pull request #184 from TomHarte/DeferredVideo
Reduces CRTC counter sizes to match real hardware; introduces a CRT gamma transform
|
2017-08-10 16:00:39 -04:00 |
|
Thomas Harte
|
62eadbb51a
|
Adjusted gamma ratio to be the correct way around. The PAL midrange should be slightly darker now.
|
2017-08-10 15:36:27 -04:00 |
|
Thomas Harte
|
ad8c8166bc
|
Built in gamma conversion for all machines, assuming an output of 2.8 for PAL, 2.2 for NTSC.
|
2017-08-10 15:17:08 -04:00 |
|
Thomas Harte
|
a5593bec79
|
Threw in support for the light-pen trigger.
|
2017-08-10 15:00:14 -04:00 |
|
Thomas Harte
|
a1e2646301
|
Imposed counter size limits.
|
2017-08-10 14:58:24 -04:00 |
|
Thomas Harte
|
cf810d8357
|
Minor: ensure the CRT is set to output as a monitor.
|
2017-08-10 14:42:47 -04:00 |
|
Thomas Harte
|
f258d6fbb2
|
Merge pull request #183 from TomHarte/6845Address
Corrects 6845 address loading
|
2017-08-10 12:51:40 -04:00 |
|
Thomas Harte
|
4961fda2a9
|
Ensured counter-intuitive CRTC writes get through, taking the opportunity to correct my handling of port IO in general: selecting multiple devices for input results in a logical AND (i.e. open collector mode), and both the CRTC and gate array will receive data from 'input's if applicable.
|
2017-08-10 12:39:19 -04:00 |
|
Thomas Harte
|
6a6e5ae79c
|
Forced users of the 6845 to be explicit about which type. So far with no effect.
|
2017-08-10 12:28:57 -04:00 |
|
Thomas Harte
|
02d792c003
|
Simplified logic slightly, avoiding repetition.
|
2017-08-10 11:48:37 -04:00 |
|
Thomas Harte
|
be8e7a4144
|
Eliminated false register aliasing, restricted register sizes and locked out reading and writing where appropriate.
|
2017-08-10 11:22:30 -04:00 |
|
Thomas Harte
|
b1dbd7833a
|
Merge branch 'master' into 6845Address
|
2017-08-10 11:15:08 -04:00 |
|
Thomas Harte
|
84ab05c5ef
|
Merge branch 'BetterFDC'
|
2017-08-10 11:14:53 -04:00 |
|
Thomas Harte
|
78138261c2
|
Merge pull request #182 from TomHarte/BetterFDC
Continues building up the 8272
|
2017-08-10 11:14:08 -04:00 |
|
Thomas Harte
|
a4c910f1de
|
This appears to be a more accurate take on 6845 address advancement — it is necessary that character output has finished for the line address to be updated.
|
2017-08-10 11:12:53 -04:00 |
|
Thomas Harte
|
2eed24e859
|
Made an initial attempt at [a subset of] multi-sector reads.
|
2017-08-10 11:11:26 -04:00 |
|
Thomas Harte
|
7d1023ea98
|
Added a 'ready' getter to Drive , formally to let the drive take ownership of that test.
|
2017-08-08 21:15:56 -04:00 |
|
Thomas Harte
|
b11d142cff
|
Switched to descriptive names.
|
2017-08-08 20:35:41 -04:00 |
|
Thomas Harte
|
021ff8674e
|
Added something for sense drive status.
|
2017-08-08 20:30:54 -04:00 |
|
Thomas Harte
|
1b86bc21ab
|
Might as well get official on my ongoing efforts at CPC emulation.
|
2017-08-08 17:58:54 -04:00 |
|
Thomas Harte
|
e3d1f4fe1e
|
Subjectively, this might be more correct. It definitely prevents intermediate frequencies. More research required.
|
2017-08-08 17:58:35 -04:00 |
|
Thomas Harte
|
a7452aebff
|
Merge pull request #181 from TomHarte/6128
Introduces support for 128kb CPCs.
|
2017-08-08 16:06:31 -04:00 |
|
Thomas Harte
|
484524d781
|
Implements RAM paging. The 6128 is now emulated.
|
2017-08-08 16:01:56 -04:00 |
|
Thomas Harte
|
dbf9927caf
|
Merge branch '8255Modes'
|
2017-08-08 07:44:56 -04:00 |
|