Thomas Harte
|
8222aac9e3
|
Added an official declaration of support for ZX81 files.
|
2017-06-11 21:40:41 -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
|
ee0283c985
|
Modified to use an in-memory buffer for file contents.
|
2017-06-11 21:35:09 -04:00 |
|
Thomas Harte
|
302c2e94de
|
Corrected lingering hard-coded mask. So titles for memory configurations above 1kb now load.
|
2017-06-11 21:27:46 -04:00 |
|
Thomas Harte
|
06fe07932a
|
While tidying up, killed an unused instance variable.
|
2017-06-11 21:21:26 -04:00 |
|
Thomas Harte
|
6913c7a018
|
This also can just use rom_mask_ .
|
2017-06-11 19:29:20 -04:00 |
|
Thomas Harte
|
6b602c74b7
|
Made an attempt to support memory maps other than the unexpanded default of 1kb.
|
2017-06-11 19:29:02 -04:00 |
|
Thomas Harte
|
8116f85479
|
Allowed the static analyser to specify a ZX80 or 81, and a memory model. Neither is respected yet in the machine.
|
2017-06-11 19:12:20 -04:00 |
|
Thomas Harte
|
e40d553045
|
Bumped the tape parser up into the machine to ensure a maintained state. Temporarily disabled normally-timed tape playback.
|
2017-06-11 18:31:43 -04:00 |
|
Thomas Harte
|
2c6414ce11
|
Adjusted to allow inspect_waves to swallow a gap before a bit if necessary, increasing the opportunities for its call.
|
2017-06-11 18:31:09 -04:00 |
|
Thomas Harte
|
e5aea632ee
|
Updated curly bracket placement.
|
2017-06-11 17:29:22 -04:00 |
|
Thomas Harte
|
e5b30cdfbb
|
Attempted to ensure appropriate resumption of processing after quick-reading a tape byte.
|
2017-06-11 17:28:47 -04:00 |
|
Thomas Harte
|
ba5f34f827
|
Narrowed view to the centre 80% of a frame.
|
2017-06-11 17:24:32 -04:00 |
|
Thomas Harte
|
84d2feb2e6
|
Cleaned up and implemented fast-tape hack. I've decided it'd be better to test some other software, potentially to give multiple issues to think about, rather than sitting around with just the one.
|
2017-06-11 16:42:49 -04:00 |
|
Thomas Harte
|
d12e50eb02
|
Corrected "should I adjust history?" tests.
|
2017-06-11 16:41:34 -04:00 |
|
Thomas Harte
|
c2bc9a8c62
|
Ensured no namespace collision in double-include guards.
|
2017-06-11 16:41:15 -04:00 |
|
Thomas Harte
|
d910a4fd38
|
Adjusted to signal an interrupt during the refresh cycle rather than weirdly just afterwards. Which cuts video timing down by 4 cycles a line. There still might be a problem here somewhere though, as I'm getting 206 cycles/line and the internet states it should be 207.
Also: lots of printfs have grown temporarily as I try to figure out what I'm doing so wrong as to break loading.
|
2017-06-11 13:32:20 -04:00 |
|
Thomas Harte
|
db30f53ab0
|
Added the capacity to back-date interrupt line changes within a machine cycle, so that machines which time themselves entirely within perform_machine_cycle can still be cycle accurate on those changes.
|
2017-06-11 13:31:02 -04:00 |
|
Thomas Harte
|
50be3a24fe
|
Sought to ensure that Mode 1 interrupts aren't happening early. Which they seem not to be.
|
2017-06-11 13:30:08 -04:00 |
|
Thomas Harte
|
256ba4028b
|
Rejigged to eliminate semi-duplication of the is-a-file test.
|
2017-06-08 21:52:13 -04:00 |
|
Thomas Harte
|
b07af2660d
|
Adjusted to make sure that the very end of a tape is properly measured.
|
2017-06-08 21:33:35 -04:00 |
|
Thomas Harte
|
bc0d70b2f7
|
Added: a shout-out when the tape has been exhausted.
|
2017-06-08 21:32:27 -04:00 |
|
Thomas Harte
|
c6e48dfd56
|
Given that a final gap is semantically part of describing tape contents, ensured one formally appears before declaring that the tape has ended.
|
2017-06-08 21:31:54 -04:00 |
|
Thomas Harte
|
c775db50ef
|
Ensured no out-of-bounds accesses.
|
2017-06-08 21:31:03 -04:00 |
|
Thomas Harte
|
ee4c8b5ad2
|
Ensured final byte plays out.
|
2017-06-08 19:51:49 -04:00 |
|
Thomas Harte
|
d8b76e31c3
|
Added and improved the is-this-ZX80-stuff test. It seems some bytes are going missing in the to->from tape conversion.
|
2017-06-08 19:49:18 -04:00 |
|
Thomas Harte
|
7e10c7f9d8
|
Relocated the ZX80/81 concept of a 'file' out from Tape into Data, given that it's an exact duplicate of memory.
|
2017-06-08 19:09:51 -04:00 |
|
Thomas Harte
|
c47128f433
|
Widened tolerances and ensured zero bits aren't prematurely discarded.
|
2017-06-07 17:50:03 -04:00 |
|
Thomas Harte
|
8aab9acc10
|
Eliminated use of the zero level; now definitively returns a low/high input.
|
2017-06-07 17:39:29 -04:00 |
|
Thomas Harte
|
350b36df25
|
Wired in an attempted usage of the new tape parser.
|
2017-06-07 17:30:53 -04:00 |
|
Thomas Harte
|
dbd2944c13
|
Took an initial run at the ZX80/81 parser.
|
2017-06-07 17:27:05 -04:00 |
|
Thomas Harte
|
4603fa6f24
|
Extended explicitly to support a token of lookahead, which is pretty much what was on offer anyway. Also corrected instance variable names, as per better adoption of C++ norms.
|
2017-06-07 17:21:57 -04:00 |
|
Thomas Harte
|
60300851ea
|
Started sketching out a tape parser for ZX80 and '81 files. I think this'll help me to verify whether the .O input is working.
|
2017-06-07 10:12:13 -04:00 |
|
Thomas Harte
|
58312ea2b7
|
Updated to new standardisation on curly bracket placement.
|
2017-06-07 10:05:43 -04:00 |
|
Thomas Harte
|
cb534d8b85
|
Corrected comment.
|
2017-06-07 10:05:16 -04:00 |
|
Thomas Harte
|
5626d35bc4
|
Tried flipping the bit meaning; decided at least to leave it in full-byte form.
|
2017-06-06 18:38:05 -04:00 |
|
Thomas Harte
|
4677cebf40
|
Rejigged to correct: spaces go after bits, not after bytes.
|
2017-06-06 18:29:15 -04:00 |
|
Thomas Harte
|
7399f3d798
|
Caveman debugging in place, it looks like this file is returning nonsense.
|
2017-06-06 18:18:55 -04:00 |
|
Thomas Harte
|
faeecf7665
|
Made sure that there's nothing but silence at the end of the tape, even if the .O file is too long.
|
2017-06-06 18:16:47 -04:00 |
|
Thomas Harte
|
63e0802f4e
|
Ensured tape input appears on the returned value.
|
2017-06-06 18:16:27 -04:00 |
|
Thomas Harte
|
e3ee9604a5
|
Added comments.
|
2017-06-06 18:01:33 -04:00 |
|
Thomas Harte
|
8c66e1d99d
|
Factored out ZX80/81 video and rejigged to ensure it will keep ticking over irrespective of whether the machine is supplying data.
|
2017-06-06 17:53:23 -04:00 |
|
Thomas Harte
|
b55579c348
|
Fixed usage of flush : the subclass version is definitively used.
|
2017-06-06 17:52:44 -04:00 |
|
Thomas Harte
|
ca9e8aecd6
|
Made a seemingly unsuccessful attempt to add tape input.
|
2017-06-06 10:13:32 -04:00 |
|
Thomas Harte
|
cc4cb45e9d
|
Implemented keyboard input and ensured that the signal generated is marked as composite, putting the colour-suppression ball into the CRT's court.
|
2017-06-06 09:25:18 -04:00 |
|
Thomas Harte
|
ebbf6e6133
|
Surprisingly, I think this may actually be the correct output: stopped throwing away the I part of the refresh register and flipped black and white.
|
2017-06-06 09:03:09 -04:00 |
|
Thomas Harte
|
cba07dec7e
|
Doubled up to display all eight pixels. To confirm that they are the wrong pixels.
|
2017-06-06 08:59:00 -04:00 |
|
Thomas Harte
|
6f7037b2b1
|
Made an initial stab at outputting half the correct pixels.
|
2017-06-06 08:55:07 -04:00 |
|
Thomas Harte
|
ef4b2f963d
|
Probably more-or-less corrected. But this is all a bit too interdependent.
|
2017-06-05 23:52:56 -04:00 |
|
Thomas Harte
|
97f3ff03b6
|
Restored white background and attempted to correct output timing deficiencies. Incomplete success.
|
2017-06-05 23:50:04 -04:00 |
|