Thomas Harte
|
e8ddff0ee0
|
Makes a first, messy, attempt at serialising CAS files into audio.
|
2017-12-21 22:34:03 -05:00 |
|
Thomas Harte
|
28fb1ce2ae
|
Removes unnecessary logging.
|
2017-12-20 21:39:17 -05:00 |
|
Thomas Harte
|
0bb24075b6
|
Immediate fixes: TSX is seemingly TZX 1.21; the tape motor control works the other way around.
Input is not yet being recognised.
|
2017-12-19 22:17:42 -05:00 |
|
Thomas Harte
|
db6d9b59d0
|
Attempts to implement TSX support for the MSX.
|
2017-12-19 21:53:04 -05:00 |
|
Thomas Harte
|
68a2895753
|
Adds enough static analyser to get to the MSX itself as the point of failure in SDL/kiosk mode.
|
2017-11-25 13:18:24 -05:00 |
|
Thomas Harte
|
792061a82b
|
Corrects warnings in the CSW, CPC DSK, ZX8081 data encoding, and PRG and binary cartridges.
|
2017-11-12 17:46:06 -05:00 |
|
Thomas Harte
|
282e5c9d3e
|
For GCC's benefit, added impossible default options.
|
2017-11-12 16:45:31 -05:00 |
|
Thomas Harte
|
ede47d4ba7
|
Improves type safety within CSW file support.
|
2017-11-12 16:42:53 -05:00 |
|
Thomas Harte
|
5aef81cf24
|
Commutes cross-platform #pragma mark s to //MARK: s.
|
2017-11-12 15:59:11 -05:00 |
|
Thomas Harte
|
2e15fab651
|
Doubles down on <cX> over <X.h> for C includes, and usage of the namespace for those types and functions.
|
2017-11-11 15:28:40 -05:00 |
|
Thomas Harte
|
cb0f58ab7a
|
Corrects order-of-initialisation errors in the CPC (again), TextureBuilder, TextureTarget, Z80, MFM parser and binary tape player.
|
2017-11-10 22:57:03 -05:00 |
|
Thomas Harte
|
d9e56711ce
|
Corrects order-of-initialisation errors in the Amstrad CPC, Vic-20, Oric, Commodore File, MFM disk controller, UEF and Commodore tape parser.
|
2017-11-10 22:47:10 -05:00 |
|
Thomas Harte
|
46e7c199b2
|
Corrects improper initialisation order of the Commodore .tap and CRTMachine::Machine.
|
2017-11-10 22:08:40 -05:00 |
|
Thomas Harte
|
fabaf4e607
|
Adds missing include files, corrects bad include paths and eliminates the Clang-specific __undefined .
|
2017-11-10 21:56:53 -05:00 |
|
Thomas Harte
|
cb015c83e1
|
Eliminated C99-style struct initialisations.
|
2017-11-10 19:14:19 -05:00 |
|
Thomas Harte
|
2203499215
|
Enables -Wreorder and corrects a few of the more trivial fixes thereby suggested.
|
2017-11-09 22:14:22 -05:00 |
|
Thomas Harte
|
6e1d69581c
|
Eliminates a variety of end-of-line spaces.
|
2017-11-07 22:54:22 -05:00 |
|
Thomas Harte
|
f95515ae81
|
Eliminates a large number of instance of end-of-line tabs.
|
2017-11-07 22:51:06 -05:00 |
|
Thomas Harte
|
e384c50580
|
Switches FileHolder to have a usage much closer to FILE *.
Thereby opens a route for file format implementations such as that appearing for CPC DSK that create an in-memory copy and perform a full rewrite.
|
2017-11-02 22:32:00 -04:00 |
|
Thomas Harte
|
ad9df4bb90
|
Commutes uint8_t * , uint16_t * , uint32_t * , size_t , off_t and long to functional-style casts.
|
2017-10-21 22:30:15 -04:00 |
|
Thomas Harte
|
e983854e71
|
Converts all uint8_t and uint16_t casts to the functional style.
|
2017-10-21 21:50:53 -04:00 |
|
Thomas Harte
|
ec999446e8
|
Commutes int and unsigned casts to the functional style.
|
2017-10-21 21:00:40 -04:00 |
|
Thomas Harte
|
5e3e91373a
|
Switches all unsigned int and double casts to functional style.
|
2017-10-21 19:49:04 -04:00 |
|
Thomas Harte
|
7c8e830b90
|
Adjusted the Acorn tape parser to avoid signed left shifts.
|
2017-10-17 22:34:49 -04:00 |
|
Thomas Harte
|
edb9fd301c
|
Begins this project's conversion to functional-style casts.
|
2017-10-03 22:04:15 -04:00 |
|
Thomas Harte
|
698e4fe550
|
Tidies the Disk file hierarchy.
|
2017-09-22 22:39:23 -04:00 |
|
Thomas Harte
|
a3e2d142e3
|
Extends UEF support to include chunk 0005, the target platform description, which is exposed via TargetPlatform::TypeDistinguisher .
|
2017-08-27 15:43:09 -04:00 |
|
Thomas Harte
|
56dd677e9c
|
Creates a virtual interface that can be adopted by classes that are able to provide some insight as to target machine.
|
2017-08-27 15:19:03 -04:00 |
|
Thomas Harte
|
0cbc1753b9
|
Quick fixes: the binary tape player now considers talk to the sleep observer only if motor control changes. The Amstrad CPC no longer attempts to use the component argument to identify the caller, since this will often be that of the superclass and not that of the derived class known to the CPC.
|
2017-08-20 13:18:46 -04:00 |
|
Thomas Harte
|
8fdc5012e4
|
Updated TapePlayer and BinaryTapePlayer to be sleepers.
|
2017-08-20 12:18:36 -04:00 |
|
Thomas Harte
|
a3b16b6dfa
|
Further beefs up the list of chunks that this TZX parser can either comprehend or skip.
|
2017-08-03 12:13:41 -04:00 |
|
Thomas Harte
|
2d2cefb0b0
|
Adjusted factoring to introduce support for block 10.
|
2017-08-02 14:36:47 -04:00 |
|
Thomas Harte
|
2fd071e45d
|
Made an honest attempt at outputting turbo speed data block data. The CPC now at least starts to load.
|
2017-08-02 14:24:34 -04:00 |
|
Thomas Harte
|
d7a5c3f49a
|
Added support for the ID 20 block and fixed a minor error in my skip-the-contents version of block 11: length is three bytes long, not two. This gives me enough structure properly to get to the end of my current test CDT, albeit without making any of the noises.
|
2017-08-02 14:12:34 -04:00 |
|
Thomas Harte
|
819761f9fb
|
Fixed another uninitialised pointer.
|
2017-08-02 13:56:35 -04:00 |
|
Thomas Harte
|
9d953421d8
|
After a quick check, added a couple of other _delegate initialisations. I should probably find a way to template this.
|
2017-08-01 07:07:43 -04:00 |
|
Thomas Harte
|
4b5e9ffb83
|
Ensured is_at_end_ is initially cleared by default.
|
2017-07-27 22:22:43 -04:00 |
|
Thomas Harte
|
4abd62e62b
|
Standardises on const [Half]Cycles as the thing called and returned, rather than const [Half]Cycles & as it's explicitly defined to be only one int in size, so using a reference is overly weighty.
|
2017-07-27 22:05:29 -04:00 |
|
Thomas Harte
|
8361756dc4
|
Switched definitively to the works-for-now approach of requiring an explicit opt-in where somebody wants to clock a whole-cycle receiver from a half-cycle clock.
|
2017-07-27 07:40:02 -04:00 |
|
Thomas Harte
|
75d67ee770
|
Relocated ClockReceiver.hpp as it's a dependency for parts of the static analyser, and therefore needs to be distinct from the actual emulation parts.
|
2017-07-25 20:20:55 -04:00 |
|
Thomas Harte
|
a1e9a54765
|
Eliminated redundant uses of ClockReceiver and sought to ensure that proper run_for s are inherited all the way down.
|
2017-07-25 20:09:13 -04:00 |
|
Thomas Harte
|
8d1dacd951
|
Clean ups along the Electron::Tape line: ensured that the ClockReceiver is opted into only once, and that its run_for propagates all the way along the chain.
|
2017-07-25 20:01:30 -04:00 |
|
Thomas Harte
|
8a2bdb8d22
|
Converted the TimedEventLoop and the things that sit atop it into ClockReceiver s.
|
2017-07-24 21:19:05 -04:00 |
|
Thomas Harte
|
b3ae920746
|
Converted the DPLL and disk controller classes to be ClockReceiver s.
|
2017-07-24 21:04:47 -04:00 |
|
Thomas Harte
|
6633537fb8
|
Discovering that there is such a thing as P81 — a ZX81 file without the name omitted — added support for it. Extended FileHolder while I was here to retain the file name and be able to supply its extension, as my quick-fix test-the-last-character approach to o/p/80/81 discrimination stops working with p81 thrown into the mix and this feels like the correct factoring.
|
2017-07-22 16:02:25 -04:00 |
|
Thomas Harte
|
313b36944f
|
Ensured that the final bit of a tape isn't dropped even if the tape ends exactly after it, by not posting a false pulse, being less restrictive about what can cap a bit, and in any case using a long gap as the end-of-file bookend.
|
2017-07-22 15:41:33 -04:00 |
|
Thomas Harte
|
456fdda6c2
|
Ensured that the mark_end step can't overwrite another recognised symbol.
|
2017-07-22 15:40:22 -04:00 |
|
Thomas Harte
|
64865b3f41
|
Signedness fixes.
|
2017-07-21 21:23:34 -04:00 |
|
Thomas Harte
|
2d8e7e9f8b
|
Removed reference to a parameter long-since dead.
|
2017-07-21 20:46:25 -04:00 |
|
Thomas Harte
|
a026998682
|
Marginally optimised set_offset to avoid reset s when possible.
|
2017-07-21 20:43:20 -04:00 |
|