Thomas Harte
|
ee71be0e7e
|
Added the option not to include ready line support in the 6502 core, and took advantage of it in the Electron, Oric and Vic-20 implementations. Also tagged those as forceinline and/or override final where applicable.
|
2017-08-21 21:56:42 -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
|
925e774015
|
Added a decent portion of documentation. But started feeling like I should address my various ownership decisions. Which would justify a separate pull request.
|
2017-08-16 16:23:33 -04:00 |
|
Thomas Harte
|
4c15e46fd1
|
Performed the normative removal from public view of Vic-20 implementation details. Which were hefty.
|
2017-08-16 16:05:30 -04:00 |
|
Thomas Harte
|
42b5b66305
|
Remove the 6502's use of runtime polymorphism in favour of ordinary templating.
|
2017-08-16 11:56:52 -04:00 |
|
Thomas Harte
|
bbb17acf3a
|
Expanded interface so that an external machine caller can request a string be typed without any knowledge of whatever it intends to do re: CharacterMappers. Which is immediately useful in paste functionality.
|
2017-08-03 11:50:50 -04:00 |
|
Thomas Harte
|
ad3a98387f
|
Within the Typer framework: hatched out CharacterMapper as a distinct thing from the target for keypresses, better to formalise responsibility but also to make it easy cleanly to sever that stuff into its own little part.
|
2017-08-03 11:42:31 -04:00 |
|
Thomas Harte
|
4abd62e62b
|
Standardises on const [Half]Cycles as the thing called and returned, rather than const [Half]Cycles & as it's explicitly defined to be only one int in size, so using a reference is overly weighty.
|
2017-07-27 22:05:29 -04:00 |
|
Thomas Harte
|
279c369a1f
|
Switched to Cycles as the result from the 6502 perform_bus_operation , helping slightly to clarify what you're intended to return and reducing type jumping within the 6502 implementation.
|
2017-07-25 22:21:09 -04:00 |
|
Thomas Harte
|
c77a83d86f
|
The 6560 is now a ClockReceiver . This reduces to zero the number of remaining instances of the text run_for_cycles in this codebase.
|
2017-07-24 22:38:35 -04:00 |
|
Thomas Harte
|
9435c1e12a
|
The 1540 is now a ClockReceiver .
|
2017-07-24 22:32:41 -04:00 |
|
Thomas Harte
|
efdac2ce8c
|
The 6522 is now a ClockReceiver .
|
2017-07-24 22:29:09 -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
|
2ff157cf7a
|
Switched CRTMachine over to use Cycles as an explicit statement of units, and followed through on the effects of that.
|
2017-07-22 22:17:29 -04:00 |
|
Thomas Harte
|
83628b285b
|
Experimentally turned the 6502 into a clock receiver. No problem encountered.
|
2017-07-22 21:52:21 -04:00 |
|
Thomas Harte
|
3f609e17b3
|
Factored out the table-lookup approach to being a typer, and adjusted so as definitely to limit myself to positive offset table lookups.
|
2017-07-21 21:18:51 -04:00 |
|
Thomas Harte
|
f931cd582d
|
Switched to use of std::vector in those few remaining places where I was still using a unique_ptr to a native type and new ing for myself. So, some of my earliest bits of code.
|
2017-07-16 13:54:07 -04:00 |
|
Thomas Harte
|
52d9ddf9e5
|
Gave the binary tape player a more logical assignment of wave level to output level. Which miraculously appears to have been the issue with the ZX80/81 tape loading — the inconsistency of silences seems to have been the issue.
|
2017-06-21 22:13:24 -04:00 |
|
Thomas Harte
|
eb8a2de5d6
|
Settled definitively on flush as more communicative than synchronise (and slightly more locale neutral); culled some more duplication from the Z80.
|
2017-05-15 07:38:59 -04:00 |
|
Thomas Harte
|
0808e9b6fb
|
Pulled the 6502 into a CPU namespace, making it an instance of something that has micro-opcodes and schedules them, and factoring out the formulation of a register pair.
|
2017-05-14 22:08:15 -04:00 |
|
Thomas Harte
|
8e35e913bb
|
Formally withdrew the 'load automatically' option for the Vic, having removed that option elsewhere.
|
2017-05-14 16:59:24 -04:00 |
|
Thomas Harte
|
5d91a2600d
|
Permitted ROM-style PRGs that are not a power-of-two in size, and added extra safety checks on loading data from a tape.
|
2017-05-08 22:15:35 -04:00 |
|
Thomas Harte
|
cb66c7e2dc
|
Performed some minor tidying.
|
2017-05-08 21:05:35 -04:00 |
|
Thomas Harte
|
61f8f2f18c
|
Switched to a more straightforward way of exiting from tape data loading.
|
2017-05-08 20:58:55 -04:00 |
|
Thomas Harte
|
7b43ae0a92
|
Implemented a catch for loading the data portion of files.
|
2017-05-07 22:22:59 -04:00 |
|
Thomas Harte
|
2807e3134f
|
Implemented speedy header finding. So that's half of it.
|
2017-05-07 20:32:48 -04:00 |
|
Thomas Harte
|
0771363f3b
|
Removed one piece of unnecessary logging.
|
2017-05-06 22:22:03 -04:00 |
|
Thomas Harte
|
2edf73908c
|
Temporarily disabled the existing fast loading implementation in pursuit of another, and started trying to correct the lack of connection between the userport VIA and the tape drive.
|
2017-05-06 22:00:12 -04:00 |
|
Thomas Harte
|
e01f3f06c8
|
Completed curly bracket movement.
|
2017-03-26 14:34:47 -04:00 |
|
Thomas Harte
|
1b1a8d3e52
|
Brought the Vic-20 into suffix naming.
|
2016-12-03 13:30:27 -05:00 |
|
Thomas Harte
|
063a62372f
|
The Commodore serial bus and C1540 are now postfix underscorers.
|
2016-12-03 13:14:03 -05:00 |
|
Thomas Harte
|
2003b514aa
|
Switched the typer to postfix underscores.
|
2016-12-03 10:55:50 -05:00 |
|
Thomas Harte
|
45b169f341
|
Made a few mapping fixes, clarified where the default reset code lives, ensured the Oric and Vic clear their keys when the typer ends.
|
2016-11-05 15:28:03 -04:00 |
|
Thomas Harte
|
338904fffe
|
Made similar cleanings of the Electron and Vic.
|
2016-11-05 15:07:57 -04:00 |
|
Thomas Harte
|
9fb9d92437
|
Made the typer much more able to help out, and thereby tidied and separated the Oric's typer.
|
2016-11-05 14:47:09 -04:00 |
|
Thomas Harte
|
4fab794747
|
Added a direct-to-two-cycles emulation path for 6522 owners.
|
2016-10-27 21:13:25 -04:00 |
|
Thomas Harte
|
6292ac5b26
|
Yet more .hpp clean(s)ing.
|
2016-10-20 21:15:21 -04:00 |
|
Thomas Harte
|
c5948ef177
|
Evicted more header-resident code.
|
2016-10-20 21:05:32 -04:00 |
|
Thomas Harte
|
6d7c3f6ac2
|
Factored out the now-sampling binary-level tape player from the Vic and connected it up to the Oric.
|
2016-10-15 21:21:18 -04:00 |
|
Thomas Harte
|
cd1ab09701
|
The Vic-20 now inserts ROMs again.
|
2016-09-29 20:15:25 -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
|
64f2538b1f
|
Added CRC checking to DFS comprehension; fixed a bunch of places where I'd used Objective-C's #import rather than #include .
|
2016-09-19 08:16:06 -04:00 |
|
Thomas Harte
|
142254a478
|
Resolved failure to open disks that arrive through analysis.
|
2016-09-17 18:11:58 -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
|
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
|
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 |
|