Thomas Harte
|
d360b2c62d
|
Standardises the static analyser on std::vector and slightly widens passageway to a machine.
The SDL target would now be fooled by a hypothetical multi-target, the Mac not yet.
|
2018-01-23 22:18:16 -05:00 |
|
Thomas Harte
|
76af0228dd
|
Corrects longstanding survival of camel case in the analyser's loadingCommand .
|
2017-12-29 15:15:29 -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
|
d2ba7d7430
|
Corrects GCC warnings in Commodore::File and the FileHolder.
|
2017-11-12 17:38:21 -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
|
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
|
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
|
698e4fe550
|
Tidies the Disk file hierarchy.
|
2017-09-22 22:39:23 -04:00 |
|
Thomas Harte
|
da082673d7
|
Drives now have a finite number of heads.
The Amstrad volunteers itself to be single sided. Everything else stays as it was.
|
2017-09-15 21:18:36 -04:00 |
|
Thomas Harte
|
96bf133924
|
Withdraws requirement for DiskController users to specify a PLL multiplier or to provide rotation speed.
In the latter case because it's no longer of any interest to the controller, and in the former because I'd rather it be picked automatically.
|
2017-09-10 22:56:05 -04:00 |
|
Thomas Harte
|
0622187ddf
|
Strips Controller of all capabilities now housed on the Drive.
|
2017-09-10 19:23:23 -04:00 |
|
Thomas Harte
|
90c7056d12
|
Started devolving timed event loop logic down to the drives, moving them closer to modelling real life.
|
2017-09-10 14:43:20 -04:00 |
|
Thomas Harte
|
3544c0f014
|
Switches from testing size() != 0 to empty() != true.
Partly as size() is O(n) but empty is O(1), but primarily for style.
|
2017-09-04 20:54:38 -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
|
8a2bdb8d22
|
Converted the TimedEventLoop and the things that sit atop it into ClockReceiver s.
|
2017-07-24 21:19:05 -04:00 |
|
Thomas Harte
|
33d16ae0cd
|
Fixes: individual static analysers reset tapes, for potential successors. The ZX81 file analyser no longer overruns its buffer upon receiving a file that is shorter than 11 bytes.
|
2017-07-12 21:34:08 -04:00 |
|
Thomas Harte
|
df4d4467b3
|
Ensured GCR parser spins the disk.
|
2017-05-16 20:53:06 -04:00 |
|
Thomas Harte
|
6a37a02eee
|
Switched to std::ostringstream to avoid the need to make a string length count (and I was one off when loading a disk).
|
2017-05-06 19:55:42 -04:00 |
|
Thomas Harte
|
e01f3f06c8
|
Completed curly bracket movement.
|
2017-03-26 14:34:47 -04:00 |
|
Thomas Harte
|
353c1c8ea3
|
Shifted ownership of PETSCII -> string conversion down to the storage layer, where it's useful for tape parsing.
|
2016-11-06 18:43:51 -05:00 |
|
Thomas Harte
|
1b15bc3a6c
|
Started relocating the tape parsers down from static analyser to storage, to signify that they may be used by the emulation (if fast loading is supported on that machine).
|
2016-11-06 16:13:13 -05:00 |
|
Thomas Harte
|
093eb55fc6
|
The parsers no longer own a tape, merely taking one as an argument. So they can be an adjunct.
|
2016-11-06 15:25:18 -05:00 |
|
Thomas Harte
|
abf47efd40
|
Factored out Commodore is-a-ROM test, allowing it to be used from the Commodore analyser and thereby allowing ROMs to get as far as the machine again.
|
2016-09-29 19:39:13 -04:00 |
|
Thomas Harte
|
572d5587d9
|
Made a first stab at enabling multi-disk machines and thereby obeying (some of) the Plus 3's status register.
|
2016-09-25 21:24:16 -04:00 |
|
Thomas Harte
|
9bbcbd1001
|
Renamed class, intending to turn a Disk::Drive into literally just that, and have a thing with a PLL that consumes events be a Controller .
|
2016-09-25 20:05:56 -04:00 |
|
Thomas Harte
|
bfed9585b8
|
Added a sector cache to avoid having to re-decode things five times over.
|
2016-09-17 22:01:54 -04:00 |
|
Thomas Harte
|
92af19098c
|
Improved file naming.
|
2016-09-15 19:24:59 -04:00 |
|
Thomas Harte
|
1d8fbe9068
|
With minor cleaning, this should now do Commodore disks correctly (?)
|
2016-09-15 19:21:09 -04:00 |
|
Thomas Harte
|
9827466297
|
Minor post-haste cleaning.
|
2016-09-15 07:58:32 -04:00 |
|
Thomas Harte
|
8992feb8cd
|
Completed a first parse at the GCR parser, proving how incredibly slow my drive is.
|
2016-09-15 07:54:42 -04:00 |
|
Thomas Harte
|
9d6dcb80a7
|
Started work on a GCR parser and the helper functions that lie behind that.
|
2016-09-13 21:53:36 -04:00 |
|
Thomas Harte
|
df7aed7e8b
|
The Commodore analyser now at least hands off to somebody else a chance to parse disks.
|
2016-09-13 07:26:51 -04:00 |
|
Thomas Harte
|
40660fe680
|
Made yet another guess at Commodore analysis. Elevated fast tape-related unnatural speed up to the OS-side mechanisms.
|
2016-09-12 22:06:03 -04:00 |
|
Thomas Harte
|
eeec516fa6
|
Implemented seeking on tapes, mucked about a bit more with the Commodore analyser, at least temporarily removed cropping from the Vic emulator.
|
2016-09-11 17:09:00 -04:00 |
|
Thomas Harte
|
1ca4a2a012
|
Sought to be more intelligent in handling cases where the two parts of a header or data field don't match — if either looks good then use it in isolation.
|
2016-09-10 17:01:17 -04:00 |
|
Thomas Harte
|
a5b17932ca
|
Attempted further to improve memory model guesswork. With many further improvements to make...
|
2016-09-08 21:09:37 -04:00 |
|
Thomas Harte
|
27fedaf892
|
The error flag is no longer directly exposed. I also tweaked the Commodore import numbers just a touch. But I think I need proper calibration.
|
2016-09-08 21:09:05 -04:00 |
|
Thomas Harte
|
2b053436e5
|
Missed from previous commit; removed assumption that get_next_data always succeeds.
|
2016-09-08 07:39:43 -04:00 |
|
Thomas Harte
|
54557d7f13
|
Added reminder, ensured the couldn't-find-data case doesn't cause a crash. Though it should imply some manual investigation.
|
2016-09-08 07:39:17 -04:00 |
|
Thomas Harte
|
50175a9aed
|
Added logic to try to spot when the first program is BASIC and, if so, what the correct memory model is, then to get that information to the Vic. Though it currently then gets overwritten by the view controller. Grrrr.
|
2016-09-07 22:17:19 -04:00 |
|
Thomas Harte
|
556b77f2fd
|
Added some TODOs, re-enabled master Acorn decision.
|
2016-09-07 07:39:47 -04:00 |
|
Thomas Harte
|
6522a9a6c2
|
Pulled the strands together provisionally to complete Commodore ROM-format tape parsing. Things are going to get complicated if or when I need to tackle turbo loaders.
|
2016-09-07 07:34:48 -04:00 |
|
Thomas Harte
|
d66516fd62
|
Finished parser for data blocks.
|
2016-09-06 22:10:33 -04:00 |
|
Thomas Harte
|
bdebc18e0a
|
Added a header parser for Commodore tapes. No time to grab file bodies now; time to go to work.
|
2016-09-06 08:49:32 -04:00 |
|
Thomas Harte
|
8901e94f0f
|
Fixed: was counting between low->high transitions rather than vice versa by adding low time then checking.
|
2016-09-06 07:06:46 -04:00 |
|
Thomas Harte
|
149cbb327b
|
Made something of a first attempt at a parser. Which is failing terribly.
|
2016-09-06 06:59:51 -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 |
|