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 |
|
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
|
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 |
|
Thomas Harte
|
7b5d5858ff
|
CRCs are just stored reversed. Of course. So this should be sufficient to load each chunk of an Acorn file.
|
2016-08-30 08:13:40 -04:00 |
|
Thomas Harte
|
b3521ed187
|
Started working towards capturing everything there is to know about a file. CRC calculation appears to be flawed somehow at the moment.
|
2016-08-30 07:38:08 -04:00 |
|
Thomas Harte
|
6218f05b8c
|
This loads the name. That'll do for now.
|
2016-08-29 22:05:06 -04:00 |
|
Thomas Harte
|
963a479908
|
Made a quick first attempt at getting a file name from Acorn tape, failing terribly but at least formalising tapes being able to signal their end.
|
2016-08-29 21:53:06 -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
|
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 |
|