Thomas Harte
|
9d43784c65
|
Significantly increased quantity of keys forwarded.
|
2017-08-01 20:37:55 -04:00 |
|
Thomas Harte
|
f5b278d683
|
Added enough stuff to put the emulated Amstrad CPC in a state of knowing whether its '0' key is pressed.
|
2017-08-01 17:31:56 -04:00 |
|
Thomas Harte
|
0536f089e1
|
Eliminated old-[personal-]fashioned line break.
|
2017-07-31 22:32:26 -04:00 |
|
Thomas Harte
|
3df13cddd4
|
As per my keenness for cleanliness improvements corresponding to my ever-increasing C++ ability: turned the Amstrad into something that a factory produces, allowing me completely to hide a bunch of implementation details.
|
2017-07-31 22:32:04 -04:00 |
|
Thomas Harte
|
afd409c883
|
Ensured that ROM images are loaded and passed to the Amstrad CPC.
|
2017-07-31 18:44:49 -04:00 |
|
Thomas Harte
|
c0f1313830
|
Performed sufficient wiring to get to the point where attempting to load a CDT creates an instance of the Amstrad CPC and then fails only because the thing vends a nullptr CRT.
|
2017-07-30 22:05:29 -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
|
279f4760d7
|
Eliminated buffer_size_ as something explicitly stored, and reduced size of delegate call out.
|
2017-07-16 15:01:39 -04:00 |
|
Thomas Harte
|
e2575d6de4
|
Routed tape motor selections through to the C++ side of the world, and ensured that manual tape playback works properly.
|
2017-07-08 19:21:12 -04:00 |
|
Thomas Harte
|
23e989e170
|
This will likely do for the Swift/XIB side of things: the play/pause button is enabled or disabled as per the user's choice of automatic tape control, and toggles function when pressed. It communicates activity down to the Objective-C[++] layer, giving it a route through to the actual machine.
|
2017-07-08 19:12:06 -04:00 |
|
Thomas Harte
|
644ef13acd
|
Connected up the fast-tape GUI option for the ZX80 and '81.
|
2017-06-22 20:20:31 -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
|
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
|
c485c460f7
|
Imported the ZX80 and 81 system ROMs (though not publicly), added enough code to post their contents into C++ world.
|
2017-06-04 18:08:35 -04:00 |
|
Thomas Harte
|
d2637123c4
|
Added necessary support to get as far as an empty window when attempting to load a piece of ZX80 software.
|
2017-06-04 17:55:19 -04:00 |
|
Thomas Harte
|
9398b6c2c8
|
Unable to differentiate, decided to map a Mac shift key to both Oric shifts.
|
2017-05-18 22:25:59 -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
|
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
|
99a35266e1
|
Attempted to bring frequency-switching logic into the cross-platform realm. Which for now creates an issue with the OpenGL context.
|
2017-02-19 21:20:37 -05:00 |
|
Thomas Harte
|
fba6baaa9c
|
Stubbed and disabled to get back to building.
|
2017-01-28 21:56:01 -05:00 |
|
Thomas Harte
|
580f347727
|
Fixed Oric SCART mode by having it change what it's giving to the CRT based on which shader it knows will be active.
|
2016-12-10 13:55:56 -05:00 |
|
Thomas Harte
|
6cdd41e5a9
|
Added direct use of the colour ROM, uploading 16 bits per pixel to contain the entire ROM composite wave.
|
2016-12-09 22:17:10 -05:00 |
|
Thomas Harte
|
ea33a28695
|
Any Oric-format disks that are inserted now make it all the way to the Oric, along with a request to emulate the Microdisc. It has received a copy of the ROM. The ball is entirely in its court now.
|
2016-11-21 20:59:25 +08:00 |
|
Thomas Harte
|
e2cdfae8a7
|
The emulated Oric now has access to both versions of the BASIC ROM and picks between them based on the static analyser's recommendation.
|
2016-11-15 10:39:16 +08:00 |
|
Thomas Harte
|
9c2df231ce
|
Made fast loading optional.
|
2016-11-03 07:59:30 -04:00 |
|
Thomas Harte
|
c24c1bf3b1
|
Created an options panel for the Oric. Which involved far too much copy and paste from the Electron. Time to figure out how to generalise this stuff, probably.
|
2016-10-19 22:56:14 -04:00 |
|
Thomas Harte
|
da9c9ad51a
|
Added in the missing keys; added variable phase to the video.
|
2016-10-14 22:39:27 -04:00 |
|
Thomas Harte
|
138eabcff4
|
Continued in my effort to wire up a keyboard. Will need further to continue.
|
2016-10-14 21:35:15 -04:00 |
|
Thomas Harte
|
d8e4c488c2
|
Started iterating towards having an AY and a fully-working keyboard.
|
2016-10-14 21:18:03 -04:00 |
|
Thomas Harte
|
0ca383ecd1
|
Set every single key to be NMI, in order to be able to progress with the diagnostics cartridge.
|
2016-10-13 18:56:55 -04:00 |
|
Thomas Harte
|
120b2d9e33
|
Switched to using a diagnostic ROM for now, as it'll definitely boot without initially requiring either a 6522 or AY. Have some forms appearing which imply I'm not doing badly, at least up to not knowing where I'm supposed to get character pixels from.
|
2016-10-12 21:52:47 -04:00 |
|
Thomas Harte
|
e6937d8003
|
Ensured that the ROM gets installed. So next for some video action?
|
2016-10-12 18:51:02 -04:00 |
|
Thomas Harte
|
4a062c616f
|
Added enough wiring to get Oric TAPs through to a completely unimplemented Oric emulation.
|
2016-10-11 22:20:13 -04:00 |
|
Thomas Harte
|
df01c78039
|
It's a bit of a mess but this is probably close to appropriate for Oric TAP files.
|
2016-10-11 07:39:48 -04:00 |
|
Thomas Harte
|
cfdd5fb686
|
By removing its status as a special case, eliminated the Atari 2600 document. It's fairly clear that my date with doing joysticks properly can be deferred only so much longer but this is no worse than previously things were.
|
2016-10-03 08:01:04 -04:00 |
|
Thomas Harte
|
bf468db73d
|
Migrated the Vic document to a mere options panel.
|
2016-10-03 07:42:05 -04:00 |
|
Thomas Harte
|
f28881ec6b
|
... and with the return of stored options and the shift of the aspect ratio to somewhere else (to sit, temporarily), the Electron document is the first of the gang to die.
|
2016-10-02 22:04:47 -04:00 |
|
Thomas Harte
|
19457621d8
|
Redistributed ownership of the user defaults key prefix, the Electron now works other than that settings aren't retained.
|
2016-10-02 21:56:50 -04:00 |
|
Thomas Harte
|
f1b99263e0
|
Relocated responsibility for loading ROMs, giving an Electron that 'works' (i.e. options aside) again.
|
2016-10-02 20:39:06 -04:00 |
|
Thomas Harte
|
989a1581da
|
Migrated analysis logic from the document controller to the document.
|
2016-10-02 17:04:14 -04:00 |
|
Thomas Harte
|
0c75c2fc41
|
Disabled all machine-specific document code, to force the migration of functionality. The 2600 works other than the little matter of input.
|
2016-10-02 16:57:57 -04:00 |
|
Thomas Harte
|
6c6e9830dd
|
Started factoring the options panels out, in the hope that they'll become the only machine-specific thing. At least in the short term.
|
2016-10-02 16:31:50 -04:00 |
|
Thomas Harte
|
ce4100e5b9
|
Fixed slots for DFS and ADFS to sideways RAM; continued working on the 1770 to get as far as trying to get the body of a sector.
|
2016-09-24 22:04:54 -04:00 |
|
Thomas Harte
|
cd5939501f
|
Treading water some more, ensured the DFS and ADFS ROMs get to the Electron. It now even inserts the DFS ROM if it has a DFS disk image. Might need to make it a sideways RAM though? Regardless, the next job surely — surely! — has to be to stop avoiding the 1770?
|
2016-09-20 07:36:57 -04:00 |
|
Thomas Harte
|
a98374995e
|
Cleaned up pre-analysis code.
|
2016-09-17 18:19:32 -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
|
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
|
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
|
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
|
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
|
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
|
29c972f4b8
|
Added hacky segue into analysis for all Electron formats. Added analyser to try to differentiate Acorn-format ROMs from other things called .rom, which are likely to be numerous.
|
2016-08-28 12:43:17 -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
|
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
|
b5af1746d5
|
Added a through path to the Objective-C for setting region and memory size.
|
2016-08-14 14:14:59 -04:00 |
|
Thomas Harte
|
be54d8040e
|
Made a first stab at having automatic loading be optional. But things are currently arranged such that the machine options are communicated too late to have an effect. So work to do.
|
2016-08-06 17:39:27 -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
|
6cfc514c2d
|
Made the rote changes necessary to attempt to open and to supply a G64 to the Vic.
|
2016-07-10 12:57:17 -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
|
81e6cc34e5
|
Per the ROM disassembly, the Vic's VIA outputs are inverted for the benefit of the serial bus.
|
2016-07-07 06:57:21 -04:00 |
|
Thomas Harte
|
47548dcedc
|
Fixed an erroneous #import.
|
2016-07-05 16:39:31 -04:00 |
|
Thomas Harte
|
86dabd007b
|
Furthered fleshing out of the 1540. Though it doesn't yet receive a ROM so won't even attempt to do anything meaningful.
|
2016-07-05 16:39:18 -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
|
df4724eb3e
|
Added a modal toggle allowing the keyboard to be switched between being a keyboard and being a joystick for the Vic.
|
2016-07-04 22:01:07 -04:00 |
|
Thomas Harte
|
88964ceac0
|
Eliminated plain pointer passing for object types.
|
2016-07-04 19:33:55 -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
|
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
|
8741be5c84
|
Made the slightest possible effort to get TAPs opened and passed to the VIC.
|
2016-06-25 16:24:52 -04:00 |
|
Thomas Harte
|
31b26b8118
|
Made a first attempt to implement the full top-to-bottom change of clock rates, giving the Atari the ability to change rate when it switches to PAL mode, as it should always have been.
|
2016-06-20 21:47:27 -04:00 |
|
Thomas Harte
|
065ec618c4
|
Factored out and templated the 6532, finally taking the opportunity to add a means to control the on-console switches of an Atari 2600.
|
2016-06-19 19:36:34 -04:00 |
|
Thomas Harte
|
ef3ed1f436
|
Implemented full paste ability for any machine that is a typer.
|
2016-06-19 16:35:04 -04:00 |
|
Thomas Harte
|
2ee78d42b9
|
Made an attempt also to trigger updates upon audio packets being returned, and significantly to reduce the size and quantity of those. This should get down to 11ms latency if the output wave is 44100; I might need to scale up the buffer size as the sampling rate increases or this is going to get crazy at 192Khz.
|
2016-06-16 20:51:35 -04:00 |
|
Thomas Harte
|
00a9f1bf24
|
Fixed best-effort updater actually to run, finally moved clock rate announcement into the C++ side of things, started working on a mechanism to allow clock rate to be updated.
|
2016-06-16 20:39:46 -04:00 |
|
Thomas Harte
|
ce59ad1911
|
Minor on-disk shuffle, to try to clarify ownership of responsibility.
|
2016-06-15 08:11:30 -04:00 |
|