1
0
mirror of https://github.com/TomHarte/CLK.git synced 2026-04-21 17:16:44 +00:00
Commit Graph

1037 Commits

Author SHA1 Message Date
Thomas Harte cc66e1973f Merge pull request #48 from TomHarte/FasterLoading
Introduces an initial attempt at static analysis of emulator programs
2016-09-15 19:38:23 -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 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 e3571e8b9e Added insurance against an infinite loop should the tape be exhausted. 2016-09-12 22:22:23 -04:00
Thomas Harte c3a795328d Windows have titles again. Also I've owned up to not knowing how to edit UEFs right now. 2016-09-12 22:15:38 -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 e54a2326a3 Made attempt to run at zero cost while processing tape input. 2016-09-11 17:34:02 -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 1de6097f06 Shuffled C stuff out on top. 2016-09-08 21:08:03 -04:00
Thomas Harte 24251a2768 Negligible indentation fix. 2016-09-08 07:49:43 -04:00
Thomas Harte 01e5dae512 Threw in 300-baud support. Why not? 2016-09-08 07:48:20 -04:00
Thomas Harte 3e925e80a3 Added a field-filling constructor for pulses. 2016-09-08 07:41:44 -04:00
Thomas Harte 1e7b5330f5 More or less rewrote, to use a filled-per-chunk buffer of upcoming pulses rather than working them out as requests come. Which is more straightforward — all the code for a particular chunk goes in exactly one place — and much easier to extend. So threw in a provisional 0104 implementation. 2016-09-08 07:41:26 -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 908dc40569 If loading automatically, assume that whatever was in the machine target set up the machine and don't override it. Too dodgy? More thought required. 2016-09-08 07:38:34 -04:00
Thomas Harte 8c84f3581a Attempted to bring some uniformity in application of configurations. 2016-09-08 05:32: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 d7d5f24aab Attempted, at least, to insert a dummy byte as per the specification. 2016-09-06 21:51:04 -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
Thomas Harte cfe8251166 Further documented interface, fixed a potential parsing blockage. 2016-09-05 22:12:52 -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 463b74301d Sought to reduce the amount of heap nonsense. 2016-09-05 19:59:58 -04:00
Thomas Harte 11850b872d Sought to emulate 0111 as a longer 0110 to test a particular HQ UEF. Some progress. Not great. 2016-09-05 18:28:43 -04:00
Thomas Harte 6239297212 Fixed off-by-one error on filename lengths and order-of-operations mistake preventing data CRC from being checked. 2016-09-05 18:15:15 -04:00
Thomas Harte e25fee2332 I'm going back to believing in this test. 2016-09-05 17:55:40 -04:00
Thomas Harte 68874b6080 Fixed accidental implicit assumption that Acorn files will be at least two blocks. 2016-09-05 17:53:57 -04:00
Thomas Harte 93f5b5303e Factored out the stuff I expect to be common to this tape nonsense, started looking at the one currently-failing tape. More on the latter to do. 2016-09-05 17:17:52 -04:00
Thomas Harte 6f62803814 Resolved dropping of every other file. 2016-09-01 08:35:28 -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 bdc6a5635f Merge branch 'master' of github.com:TomHarte/CLK 2016-08-31 21:21:37 -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 9d7962d6c0 Closed the loop on Electron analysis for now. Including loading command detection. 2016-08-31 20:24:13 -04:00
Thomas Harte d8c0da7ccb I think this should lead to a full representation of files on an Acorn tape, but subject to is_at_end working. 2016-08-31 19:57:09 -04:00