1
0
mirror of https://github.com/TomHarte/CLK.git synced 2024-07-30 23:29:08 +00:00
Commit Graph

104 Commits

Author SHA1 Message Date
Thomas Harte
0ce901bd48 Added necessary wiring to get as far as asking an arm of the analyser to check out an Acorn disk image. 2016-09-18 21:18: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
180c3df2d4 Calling it 'number theory' probably isn't accurate but extracted the CRC stuff and started using it for [M]FM encoding. 2016-09-18 18:33:26 -04:00
Thomas Harte
bcf91de7e9 Declared support for the Acorn disk files, started hammering out an encoder. 2016-09-18 13:35:54 -04:00
Thomas Harte
0e44cfa8a1 Merge branch 'master' into WD1770 2016-09-18 10:34:11 -04:00
Thomas Harte
6f0b9adc3d Factors.cpp is dead. 2016-09-18 10:23:34 -04:00
Thomas Harte
a98374995e Cleaned up pre-analysis code. 2016-09-17 18:19:32 -04:00
Thomas Harte
e3daf80564 Added a file for the 1770, at least. 2016-09-17 18:01:00 -04:00
Thomas Harte
7c65c69e0f Migrated to Swift 3. 2016-09-15 22:12:12 -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
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
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
8c84f3581a Attempted to bring some uniformity in application of configurations. 2016-09-08 05:32:17 -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
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
963e307d0c Increased documentation. 2016-09-05 22:06:39 -04:00
Thomas Harte
05c24222d8 Liberated the tape parser template. 2016-09-05 20:02:35 -04:00
Thomas Harte
21e5f407d8 I need to get a bit more definitive on naming but this gets all the way to setting a configuration upon an Electron. 2016-08-31 22:03:42 -04:00
Thomas Harte
a9b67dfba0 Introduced an NSDocumentController subclass. 2016-08-31 21:21:07 -04:00
Thomas Harte
7bc2b6b161 Added the minor piece that will allow analysis results to be obtained from Objective-C, and exposed to Swift in sufficient detail for it to be able to pass on to the machine. 2016-08-31 20:43:29 -04:00
Thomas Harte
0032ad2634 Edging ever onwards; killed forced attempt at uniformity in targets, sketched out the interface for a next-file-from call to Acorn tapes. 2016-08-29 21:10:38 -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
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
Thomas Harte
38aec44d85 Made sufficient changes for the Vic itself to believe it can recast a PRG as a tape and insert it that way. So now the ball is in the court of: how the heck are Commodore tapes encoded? 2016-08-15 19:44:41 -04:00
Thomas Harte
58297f1baf Performed the basic metadata and routing for opening D64 files. Realised that I wasn't actually necessarily catching exceptions properly for all file opens, and fixed. 2016-08-01 07:09:15 -04:00
Thomas Harte
89a1881fef Started turning the 1540 into an actual disk drive. 2016-07-29 11:03:09 -04:00
Thomas Harte
0e581c7607 Factored out the stuff of running a timed event loop from the TapePlayer. 2016-07-29 07:15:46 -04:00
Thomas Harte
e55db0cfe8 Made an attempt to eliminate creeping tape processing accuracy misses, which implied factoring out the GCM and LCD functions, which I then felt didn't really amount to signal processing. 2016-07-29 05:19:01 -04:00
Thomas Harte
e061e849d4 Had a second bash at the PLL. Probably I should read some of the literature. 2016-07-27 16:24:24 -04:00
Thomas Harte
0aa90b943b Switched to specifying bit length as a quotient for the purposes of a PCMSegment and verified that I had the logic for picking a Commodore time zone backwards: bigger numbers are faster, not slower.
Started sketching out a DiskDrive class.
2016-07-15 06:51:11 -04:00
Thomas Harte
d1fe07f14d Added test of perfect DPLL input timing. 2016-07-12 21:42:23 -04:00
Thomas Harte
75d95c0bc0 Sketched out an interface for a digial PLL. Not persuaded yet. Baby steps. 2016-07-11 22:12:58 -04:00
Thomas Harte
1e9eedc314 Factored out the PCM track since it's going to be a useful construct for almost every file format. Documented it a little better. 2016-07-10 18:36:52 -04:00
Thomas Harte
ff49857f5c Started sketching out support for the G64 file format. 2016-07-10 10:17:53 -04:00
Thomas Harte
9e3d6b762b Sketched out the generic interface for a disk, documenting it and the tape interface while I'm here. 2016-07-10 08:54:39 -04:00
Thomas Harte
d8334edf4a Started trying to clean up, including commuting the C1540 source file name to match its class name but mainly by adding documentation. 2016-07-10 07:46:20 -04:00
Thomas Harte
865eb421cd Quick on-disk tidy up. 2016-07-09 15:44:55 -04:00
Thomas Harte
7cc4bf3fe7 Hit and hope is getting me nowhere. Time to unit test this thing. 2016-07-09 15:40:25 -04:00
Thomas Harte
d2cded7b59 Attempted to separate out the concept of a serial port and a serial bus, since the bus may be shared, and to establish half duplex communications from the Vic. 2016-07-05 14:55:20 -04:00
Thomas Harte
0d3d0fbe4d Created a namespace for Commodore and an empty container file for the 1540[/1] implementation. 2016-07-05 13:28:27 -04:00
Thomas Harte
6dbf16210b Switched protocol to meaningful name and corrected its omission from the repository. 2016-07-04 19:19:07 -04:00
Thomas Harte
6419d9c485 Added a single IRQ test case, discovering that I'm two cycles short. Whoops! 2016-06-28 21:29:43 -04:00
Thomas Harte
6027cba95f Factored out the stuff of pushing a fast-loading option onwards and storing it within the user defaults. 2016-06-27 21:38:14 -04:00
Thomas Harte
ee19417ded Made an attempt quickly to implement parsing of the Commodore .TAP file format. 2016-06-25 16:09:32 -04:00
Thomas Harte
4db61d98f4 Killed the .cpp. 2016-06-19 20:21:38 -04:00