Thomas Harte
999a0c22d4
Adds superficial support for MSX .DSK.
...
In the sense that the file format itself is properly parsed, but the MSX doesn't actually yet have disk hardware.
2018-01-07 16:35:57 -05:00
Thomas Harte
db6d9b59d0
Attempts to implement TSX support for the MSX.
2017-12-19 21:53:04 -05:00
Thomas Harte
ca26ce8400
Slightly corrects style errors in the Cartridge hierarchy, and introduces mapping of .ROM to the MSX when appropriate.
2017-12-02 16:01:30 -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
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
c0055a5a5f
Further builds up SConstruct, correcting many missed imports and a couple of improper uses of C99 in C++ code.
2017-11-09 22:04:49 -05:00
Thomas Harte
698e4fe550
Tidies the Disk
file hierarchy.
2017-09-22 22:39:23 -04:00
Thomas Harte
b5406b90cd
Introduces a new class hierarchy for disk images.
...
Increasing independence of format-specific stuff and generic caching without mangling them into a common namespace, and allowing in some cases for a decrease in read/write blocking.
2017-09-22 20:28:11 -04:00
Thomas Harte
63ee8c9d58
Uses file containers' type distinguishers where available, and supplies potential insight to the ZX80/81 analyser as now required.
2017-08-27 15:20:58 -04:00
Thomas Harte
9aa150c338
Abstracts the target platform type out from the static analyser's ownership.
2017-08-27 15:02:13 -04:00
Thomas Harte
c6e6c3fcfb
Resolves all current analyser warnings.
2017-08-24 22:18:44 -04:00
Thomas Harte
e6683e7f2d
Added the base skeletal stuff of HFE support.
2017-08-17 21:48:48 -04:00
Thomas Harte
f68565a33f
Split the static analyser functionality so that it's possible just to ask for the set of media implied by a particular file. Extended ConfigurationTarget so that media alone can be pushed to a machine.
2017-08-17 10:48:29 -04:00
Thomas Harte
75c59fefab
Added an empty husk to begin support for Amstrad CPC disk image formats.
2017-08-05 10:02:10 -04:00
Thomas Harte
5b5720fac0
Added to the static analyser the most basic through-path for Amstrad CPC content.
2017-07-30 21:15:20 -04:00
Thomas Harte
d25d7d7d40
Added the Amstrad CPC as a named target and declared support for its CDT file format.
2017-07-29 21:56:33 -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
238348c885
Performed the initial wiring to announce that this application supports TZX files and to route them to the ZX80/81 static analyser. The TZX class itself does not yet do much beyond basic validation. I think it'll be easiest if it follows in UEF's footsteps in queuing up pulses ahead of time, so some factoring out is now required.
2017-07-16 21:33:11 -04:00
Thomas Harte
368bff1a82
Added a shell class that will one day be able to parse CSW files, plus the logic and metadata to instantiate it when a CSW presents itself.
2017-07-10 21:43:58 -04:00
Thomas Harte
77aa3c187e
Rebranded ZX80O as ZX80O81P, with an eye to making it accept ZX81 .p files. Adjusted the initial selection part of the static analyser appropriately.
2017-06-11 21:38:32 -04:00
Thomas Harte
02b7c3d1b0
Added the necessary wiring to get into a ZX80/81-oriented part of the static analyser, which could in principle post a ZX80 target.
2017-06-04 17:04:06 -04:00
Thomas Harte
655809517c
Ensured that there is a subclass of file that is entrusted to load .O/.80 files, and that the code routes such files to it, noting that it should consider whether a ZX80 is required.
2017-06-04 16:37:03 -04:00
Thomas Harte
1f56e85f6d
Centralised resetting of tape files within the static analyser, having implemented it patchily.
2017-05-06 22:19:08 -04:00
Thomas Harte
7ab6023a0c
Ensured no attempt to call strcmp
on null
if a file name without an extension got into here.
2017-02-11 13:36:36 -05:00
Thomas Harte
8499783b14
Dragged multibyte primitives and signature checks up to the base class. Implemented support for Oric MFM-style .DSK, at the file format level.
2016-11-21 20:47:16 +08:00
Thomas Harte
4a062c616f
Added enough wiring to get Oric TAPs through to a completely unimplemented Oric emulation.
2016-10-11 22:20:13 -04:00
Thomas Harte
df01c78039
It's a bit of a mess but this is probably close to appropriate for Oric TAP files.
2016-10-11 07:39:48 -04:00
Thomas Harte
de863719d0
Made a first attempt at Acorn ADFS support plus the start of a suitable analyser.
2016-09-25 17:46:11 -04:00
Thomas Harte
91cd7e143b
Started on the SSD/DSD support. Realised I had ommitted multiple head support from my disk class. Fixed that.
2016-09-18 19:21:02 -04:00
Thomas Harte
ee8510984f
Added just enough wiring to restore the 2600 to functionality.
2016-09-15 19:34:45 -04:00
Thomas Harte
92af19098c
Improved file naming.
2016-09-15 19:24:59 -04:00
Thomas Harte
8b933182af
Added enough wiring (hopefully) that the Commodore tape's GetFiles should be called when appropriate.
2016-09-06 06:39:40 -04:00
Thomas Harte
d1abfc040c
Addressed my dithering here: the file format containers themselves should do nothing but inspect the data to find out whether it is of the correct format. The machine steps are there for machine-specific validation. So it's probably easier to treat a binary ROM image just as a binary ROM image. Therefore, the Acorn-specific .rom detection is now in an Acorn-specific area.
2016-08-29 08:48:49 -04:00
Thomas Harte
d9f0065154
Sketched out just enough classes to get through the get-contents-into-memory step of static analysis.
2016-08-28 12:20:40 -04:00
Thomas Harte
24938326ac
ROMs definitely have no behaviour other than responding to memory accesses. Cartridges might. So picked the more general term. Sketched out a class at least to parse PRG as though it were a cartridge. Hence the static analyser can guess at whether a PRG is a cartridge or an ordinary program.
2016-08-27 18:26:51 -04:00
Thomas Harte
a1b3a18d11
Started forcing a resolution on ROMs by doing. But have immediately misstepped. Rename coming momentarily...
2016-08-27 18:17:40 -04:00
Thomas Harte
56c0d70c1f
Gave disks their own namespace.
2016-08-27 17:15:09 -04:00
Thomas Harte
c0402d0c2b
Gave tapes their own namespace.
2016-08-27 17:09:45 -04:00
Thomas Harte
8c333059a8
Turning this into a slog: gave UEF
a more appropriate name, got as far as now having to decide what to do about ROMs as to structure. I guess they're machine specific, so specific classes?
2016-08-27 16:40:21 -04:00
Thomas Harte
55ada536ac
Added a test call, further mutated result structure.
2016-08-27 14:25:16 -04:00
Thomas Harte
e68ff64045
Actually, this is less prescriptive.
2016-08-27 13:42:51 -04:00
Thomas Harte
5ffd9e4f0d
This is probably how the static analyser interface will look?
2016-08-23 21:35:59 -04:00