Thomas Harte
|
50f53f7d97
|
Adds INC/DEC rr and LD SP, HL tests.
|
2021-04-08 22:14:53 -04:00 |
|
Thomas Harte
|
73fbd89c85
|
Correct opcodes, ability to terminate on a single-cycle contention.
|
2021-04-08 22:09:33 -04:00 |
|
Thomas Harte
|
f74fa06f2d
|
Introduces failing test for LD [A/I/R], [A/I/R].
|
2021-04-08 20:28:55 -04:00 |
|
Thomas Harte
|
ee989ab762
|
Fills in the rest of the simple two-byte instructions.
|
2021-04-08 20:13:52 -04:00 |
|
Thomas Harte
|
818655a9b6
|
Starts on two-bus-cycle instructions, correcting validators.
|
2021-04-08 20:01:46 -04:00 |
|
Thomas Harte
|
57a7e0834f
|
Corrects sampling of MREQ.
|
2021-04-08 19:21:35 -04:00 |
|
Thomas Harte
|
cd787486d2
|
Tests all of the single-byte, no-access opcodes.
|
2021-04-07 22:07:52 -04:00 |
|
Thomas Harte
|
67fd6787a6
|
Builds what I think I need to validate Z80 address, MREQ, IOREQ and RFSH.
|
2021-04-07 21:57:40 -04:00 |
|
Thomas Harte
|
094d623485
|
Updates unit tests.
|
2021-04-05 21:33:04 -04:00 |
|
Thomas Harte
|
53ba0e67d1
|
Revert change to screenshot destination.
For a sandboxed app, there's a lot more to it than this.
|
2021-03-25 22:44:18 -04:00 |
|
Thomas Harte
|
e90e30e766
|
Enables start by double-click.
|
2021-03-25 17:53:07 -04:00 |
|
Thomas Harte
|
9f6bb325e6
|
Fixes longstanding issue with initial target for input.
|
2021-03-25 17:48:48 -04:00 |
|
Thomas Harte
|
6e2c65435a
|
Tweaks cell height slightly further.
|
2021-03-25 17:44:46 -04:00 |
|
Thomas Harte
|
052ab44f1c
|
Adds a title and adjusts aspect ratio.
|
2021-03-25 17:37:40 -04:00 |
|
Thomas Harte
|
daa5679241
|
Don't allow cell editing, lock size.
|
2021-03-25 16:48:11 -04:00 |
|
Thomas Harte
|
e055668554
|
With no space constraint, this can be 'ZX Spectrum'.
|
2021-03-25 16:27:12 -04:00 |
|
Thomas Harte
|
c96829c29e
|
Adds a table view to control tab selection.
This should allow the new machine dialogue to retain a sensible width from here onwards.
|
2021-03-25 16:25:11 -04:00 |
|
Thomas Harte
|
ae4ccdf5e6
|
Merge branch 'master' into DesktopScreenshots
|
2021-03-24 18:40:20 -04:00 |
|
Thomas Harte
|
6bdaa54aaf
|
Bumps copyright year.
|
2021-03-23 17:46:32 -04:00 |
|
Thomas Harte
|
a3cd953415
|
Fixes Spectrum machine selection.
|
2021-03-22 19:28:12 -04:00 |
|
Thomas Harte
|
c0abdf1b86
|
Factors out the CPC's simple FDC adaptor.
|
2021-03-22 19:12:10 -04:00 |
|
Thomas Harte
|
f37f89a7d3
|
Merge branch 'master' into ZXSpectrum
|
2021-03-21 22:44:37 -04:00 |
|
Thomas Harte
|
21b1dab4a5
|
Adds the ZX Spectrum to Qt's New... menu.
|
2021-03-21 22:35:46 -04:00 |
|
Thomas Harte
|
7562917740
|
Adds the Spectrum to the macOS New... menu.
|
2021-03-21 21:50:50 -04:00 |
|
Thomas Harte
|
2ad2b4384b
|
Introduces a container for ZX Spectrum-style TAPs.
|
2021-03-19 23:01:49 -04:00 |
|
Thomas Harte
|
2ee478b4c4
|
Goes some way towards wiring up Spectrum options.
|
2021-03-19 22:17:20 -04:00 |
|
Thomas Harte
|
84774a7910
|
Update Qt and SDL build files.
|
2021-03-19 11:19:10 -04:00 |
|
Thomas Harte
|
2371048ad1
|
Formally separates keyboard code.
With an eye to formalising the Spectrum/ZX81/ZX80 differences.
|
2021-03-19 10:36:08 -04:00 |
|
C.W. Betts
|
5758693b7d
|
Minor pokes to the test files code.
|
2021-03-19 02:19:49 -06:00 |
|
Thomas Harte
|
69ca2e8803
|
Update Xcode project.
|
2021-03-18 23:52:35 -04:00 |
|
Thomas Harte
|
135134acfd
|
Adds a shell for video emulation.
|
2021-03-18 12:47:48 -04:00 |
|
Thomas Harte
|
97249b0edd
|
Slow walks further towards a functioning Spectrum.
|
2021-03-18 10:18:17 -04:00 |
|
Thomas Harte
|
5a1bda1d82
|
Performs boilerplate towards a ZX Spectrum class.
|
2021-03-17 23:38:55 -04:00 |
|
Thomas Harte
|
b7d6b8efcf
|
Fix Xcode project.
|
2021-03-17 23:27:34 -04:00 |
|
Thomas Harte
|
b63ca16ce2
|
Attempts to hatch a Sinclair namespace.
|
2021-03-17 22:40:29 -04:00 |
|
Thomas Harte
|
54491b35ef
|
Merge branch 'master' into ZXSpectrum
|
2021-03-17 12:39:20 -04:00 |
|
Thomas Harte
|
b447f5f174
|
Starts adding the Spectrum to the static analyser.
|
2021-03-17 12:38:37 -04:00 |
|
Thomas Harte
|
397704a1e6
|
Withdraws published quick-load option for the CPC.
|
2021-03-15 11:37:23 -04:00 |
|
Thomas Harte
|
7d778bc328
|
Formally introduces fast tape support as an option.
It doesn't feel that fast yet though.
|
2021-03-12 22:57:02 -05:00 |
|
Thomas Harte
|
d93d380c88
|
Adds bit-level Spectrum-style tape parsing.
More to do, obviously.
|
2021-03-07 15:51:25 -05:00 |
|
Thomas Harte
|
83cbbe09c6
|
Adds missing constraints; eliminates magic constants.
|
2021-03-07 12:52:39 -05:00 |
|
Thomas Harte
|
2f18f40697
|
Ensures machine selection carries over sessions.
|
2021-03-06 21:32:35 -05:00 |
|
Thomas Harte
|
eea4c1f148
|
Wires up machineSelectionTabs.
|
2021-03-06 21:31:08 -05:00 |
|
Thomas Harte
|
26ad760904
|
Withdraws the Apple IIgs tab item.
Also makes some Swift style changes while I'm here: I'm pervasively assuming that all these objects exist, might as well be upfront about it.
|
2021-03-06 18:53:09 -05:00 |
|
Thomas Harte
|
2a7ea9f57c
|
Merge branch 'master' into AppleIIgs
|
2021-02-26 21:31:18 -05:00 |
|
Thomas Harte
|
4f5eb4d71b
|
Adds the Mac 128k & 512k as Qt options.
|
2021-02-26 21:25:11 -05:00 |
|
Thomas Harte
|
a1df8452ce
|
Add the 128kb and 512kb Macintoshes as selectable options in macOS.
|
2021-02-26 21:22:54 -05:00 |
|
Thomas Harte
|
72d7901c88
|
Takes a shot at the keyboard data full flag.
Just a guess. But likely?
|
2021-02-19 20:06:12 -05:00 |
|
Thomas Harte
|
35be402354
|
Improve sanity check.
|
2021-02-16 19:47:25 -05:00 |
|
Thomas Harte
|
28bd620e7f
|
Adds joystick support to the IIgs.
|
2021-02-16 19:39:22 -05:00 |
|
Thomas Harte
|
96f2d802d9
|
Adds a safeguard against undefined behaviour in the debugger.
|
2021-02-16 19:17:54 -05:00 |
|
Thomas Harte
|
b117df3367
|
Factors out joystick logic.
|
2021-02-16 19:17:32 -05:00 |
|
Thomas Harte
|
17e9305282
|
Starts adding a keyboard.
|
2021-02-13 23:16:45 -05:00 |
|
Thomas Harte
|
2c4dcf8843
|
Edges towards implementing an ADB device.
|
2021-02-12 21:50:24 -05:00 |
|
Thomas Harte
|
adfdfa205f
|
Starts to establish the means by which I'll implement ADB devices.
|
2021-02-12 18:42:12 -05:00 |
|
Thomas Harte
|
6ca8aa99fc
|
Commit SDL and Qt project files; improve commenting.
|
2021-02-10 21:28:32 -05:00 |
|
Thomas Harte
|
17bac4c8cf
|
Starts to formalise the ADB bus.
|
2021-02-10 21:24:31 -05:00 |
|
Thomas Harte
|
6526c645a5
|
Merge branch 'master' into AppleIIgs
|
2021-02-02 21:29:38 -05:00 |
|
Thomas Harte
|
53514c7fdc
|
Ensures non-breakage of Qt interface.
|
2021-01-31 21:28:55 -05:00 |
|
Thomas Harte
|
07df7572b3
|
Switch to preferred Acorn-world extension: DAT.
|
2021-01-31 21:03:09 -05:00 |
|
Thomas Harte
|
f1ba040dd8
|
This is probably how Acorn hard disk images look (?)
|
2021-01-31 16:00:52 -05:00 |
|
Thomas Harte
|
8db289e229
|
Adds some notes-to-self on SCSI and a route to using Acorn's ADFS.
|
2021-01-31 13:12:59 -05:00 |
|
Thomas Harte
|
b5ecd5f7ef
|
Merge branch 'master' into AppleIIgs
|
2021-01-31 11:47:40 -05:00 |
|
Thomas Harte
|
41a618c957
|
Adds new Electron configuration options to the Qt UI.
|
2021-01-31 10:13:32 -05:00 |
|
Thomas Harte
|
3d85e6bb97
|
Adds Mac UI for new Electron configuration options.
|
2021-01-31 09:49:51 -05:00 |
|
Thomas Harte
|
56111c75ae
|
Makes first efforts towards disassembly.
|
2021-01-26 19:52:30 -05:00 |
|
Thomas Harte
|
7f62732476
|
Fixes kiosk target, accepts that I'll probably never add UI tests.
|
2021-01-23 21:59:21 -05:00 |
|
Thomas Harte
|
e5076b295b
|
Corrects namespace.
|
2021-01-21 18:58:11 -05:00 |
|
Thomas Harte
|
ec0018df79
|
Routes in the ADB keyboard ROM. This should get as far as parsing.
|
2021-01-18 16:59:49 -05:00 |
|
Thomas Harte
|
5ace61f9b9
|
Continues walking very slowly towards cached execution.
|
2021-01-18 11:20:45 -05:00 |
|
Thomas Harte
|
54b26c7991
|
Bends to using 8-bit lookups for M50740 instructions.
|
2021-01-17 20:03:36 -05:00 |
|
Thomas Harte
|
8860d0ff51
|
Starts to establish the CachingExecutor.
|
2021-01-16 22:06:16 -05:00 |
|
Thomas Harte
|
10caa1a1fb
|
Steps gingerly towards execution.
|
2021-01-16 20:51:02 -05:00 |
|
Thomas Harte
|
3b2d65fa16
|
Adds access type declaration.
|
2021-01-16 20:04:01 -05:00 |
|
Thomas Harte
|
3dc36b704a
|
Starts on the next piece: parsers.
|
2021-01-16 19:54:40 -05:00 |
|
Thomas Harte
|
321e10fffb
|
Adds 'InstructionSets' to the SDL and Qt projects.
|
2021-01-15 22:30:02 -05:00 |
|
Thomas Harte
|
3c20e1f037
|
Adds files for the M50740 and corrects namespace errors elsewhere.
|
2021-01-15 21:30:30 -05:00 |
|
Thomas Harte
|
15bedc74d4
|
Merge branch 'master' into AppleIIgs
|
2021-01-15 21:15:10 -05:00 |
|
Thomas Harte
|
ddb4bb1421
|
Better plans project layout.
|
2021-01-15 18:16:01 -05:00 |
|
Thomas Harte
|
ca94e9038e
|
Introduces 'far' test, fixes parsing.
|
2021-01-14 22:15:38 -05:00 |
|
Thomas Harte
|
2c72a77a25
|
Adds byte-by-byte decoder test; corrects divergences.
|
2021-01-13 21:51:18 -05:00 |
|
Thomas Harte
|
8c0e06e645
|
Adds a test for 0x83 and fixes sign extension.
ODA doesn't seem to accept 0x82, but testing 0x83 adds some confidence.
|
2021-01-13 20:42:21 -05:00 |
|
Thomas Harte
|
5058a8b96a
|
Completes the first test stream.
... and improves decoding consistency in conjunction.
|
2021-01-12 21:49:22 -05:00 |
|
Thomas Harte
|
762ecab3aa
|
Adds operand/displacement capture.
This gets unit test as far as a disagreement over how to handle bad 0xc4 suffixes.
|
2021-01-10 22:55:25 -05:00 |
|
Thomas Harte
|
9ba5b7c1d4
|
Adds a few more asserts.
It's still just operands and displacements failing, which is nice.
|
2021-01-08 23:21:01 -05:00 |
|
Thomas Harte
|
5f807b6e47
|
Ensures that the operand is the only thing failing in decoding of the first instruction.
|
2021-01-08 23:02:06 -05:00 |
|
Thomas Harte
|
86577b772b
|
Rethinks size ; packs all captured information into an x86 Instruction.
Albeit that operand and displacement are't yet captured. Or extractable.
|
2021-01-08 22:22:07 -05:00 |
|
Thomas Harte
|
3b55d3f158
|
Nudges up to a need to decode operation from the ModRegRM byte.
|
2021-01-05 21:25:12 -05:00 |
|
Thomas Harte
|
da814c62bc
|
Merge branch 'master' into AppleIIgs
|
2021-01-03 20:57:08 -05:00 |
|
Thomas Harte
|
d4095b1b3b
|
Merge branch 'master' into DecodersAhoy
|
2021-01-03 20:56:47 -05:00 |
|
Thomas Harte
|
a8738b533a
|
Switch for now to block-level decoding.
It's easier to step debug.
|
2021-01-03 20:07:46 -05:00 |
|
Thomas Harte
|
11b6c1d4b5
|
Proceeds to three instructions correctly decoded. 'Wow'.
|
2021-01-03 17:03:50 -05:00 |
|
Thomas Harte
|
367cb1789d
|
Starts building an x86 test.
|
2021-01-03 16:37:35 -05:00 |
|
Thomas Harte
|
adf1484ecc
|
Introduces third test sequence, uneventfully.
|
2021-01-03 16:21:23 -05:00 |
|
Thomas Harte
|
eb8d0eefd5
|
Factors out some boilerplate and introduces second sequence.
|
2021-01-03 11:14:30 -05:00 |
|
Thomas Harte
|
c934e22cee
|
Introduces a first test of PowerPC decoding.
Corrected as a result: the bcx conditional, that stdu is 64-bit only, extraction of the li field.
|
2021-01-02 22:47:42 -05:00 |
|
Thomas Harte
|
dc9d370952
|
Does the easier part of the easier half of 8086 decoding.
|
2021-01-02 19:16:07 -05:00 |
|
Thomas Harte
|
3d1783ddae
|
Add exposition as to the purpose of decoders.
|
2021-01-01 17:32:57 -05:00 |
|
C.W. Betts
|
3749b7b776
|
My improvements:
Use synthesized properties for CSMissingROM.
Remove openGLView from the xib: that will quiet a warning.
Add nullability metadata to CSStaticAnalyser.
|
2020-12-31 13:23:46 -07:00 |
|
Thomas Harte
|
ed63e7ea75
|
Starts building out a PowerPC decoder.
|
2020-12-30 22:55:59 -05:00 |
|
Thomas Harte
|
31d68622c8
|
Better ensures frame buffer can be cleared.
|
2020-12-29 22:26:19 -05:00 |
|
Thomas Harte
|
ee5f45c979
|
Merge branch 'master' into AppleIIgs
|
2020-12-29 22:16:23 -05:00 |
|
C.W. Betts
|
5a48e50355
|
Use isEqual: to compare GCController when connecting/disconnecting.
Only remove observers for GCController notifications.
|
2020-12-14 15:41:11 -07:00 |
|
C.W. Betts
|
86283b1815
|
Actually write the setup code.
|
2020-12-14 01:14:40 -07:00 |
|
C.W. Betts
|
a38d964f62
|
Initial GameController joystick support.
|
2020-12-13 11:23:33 -07:00 |
|
Thomas Harte
|
3b2e97e77c
|
Introduces basic auxiliary switch tests.
All of which pass. Grrr.
|
2020-12-11 21:30:03 -05:00 |
|
Thomas Harte
|
c978a95463
|
Increases asserts and adds a test.
Thereby discovers and fixes a problem with set_main_paging().
|
2020-12-10 21:49:23 -05:00 |
|
Thomas Harte
|
fe4caf7a41
|
Nudges tick frequency up to match the other platforms.
|
2020-12-10 21:02:13 -05:00 |
|
Thomas Harte
|
4bf85abf30
|
Ensure defined initial state for the frame buffer.
|
2020-12-10 18:15:07 -05:00 |
|
Thomas Harte
|
49cee90b4d
|
Ensures no retraces are missed.
|
2020-12-09 20:32:26 -05:00 |
|
Thomas Harte
|
394f6b58d8
|
Ensure _finalisedLineTexture really is cleared.
|
2020-12-09 20:18:53 -05:00 |
|
Thomas Harte
|
a91a13b46b
|
Merge branch 'master' into AppleIIgs
|
2020-12-09 19:33:23 -05:00 |
|
Thomas Harte
|
b589d6e3ef
|
Fixes retina-display buffer size.
|
2020-12-09 18:51:10 -05:00 |
|
Thomas Harte
|
db8b265e80
|
Enable M1 release builds.
|
2020-12-09 18:38:14 -05:00 |
|
Thomas Harte
|
d35def4bbc
|
Ensures a consistent initial state.
|
2020-12-06 22:01:59 -05:00 |
|
Thomas Harte
|
d5f209366a
|
Extends testing to disabling IO space.
|
2020-12-06 21:53:53 -05:00 |
|
Thomas Harte
|
9062e80e9d
|
Adds anti-IO protection.
|
2020-12-06 21:46:04 -05:00 |
|
Thomas Harte
|
fd3760cedc
|
Adds passing test of basic $00 -> $01 -> $e1 shadowing.
|
2020-12-06 21:19:38 -05:00 |
|
Thomas Harte
|
9b73331ee9
|
Resolves deprecated use of scanHexInt32 .
|
2020-12-06 20:49:12 -05:00 |
|
Thomas Harte
|
65ca931e83
|
Throws in a new assert, against the unimplemented bit 0 of new video.
|
2020-12-06 20:26:24 -05:00 |
|
Thomas Harte
|
3da6b4709c
|
Fixes sign of arithmetic.
|
2020-11-29 20:23:33 -05:00 |
|
Thomas Harte
|
091bce9350
|
Merge branch 'master' into AppleIIgs
|
2020-11-29 00:09:20 -05:00 |
|
Thomas Harte
|
ab3fcb3ea0
|
Qt: don't copy the result of get_keyboard().
|
2020-11-29 00:01:11 -05:00 |
|
Thomas Harte
|
5fc6dd1a4d
|
Regresses macOS deployment target for kiosk mode to avoid OpenGL warning.
|
2020-11-27 21:02:04 -05:00 |
|
Thomas Harte
|
79ef026b93
|
Allows machines to declare a preference for logical input.
It's only a preference, and the Apple II does prefer it.
|
2020-11-27 21:00:48 -05:00 |
|
Thomas Harte
|
f54a3f8619
|
Limit test target to latest macOS, current architecture.
|
2020-11-26 19:50:38 -05:00 |
|
Thomas Harte
|
b0efc647f1
|
An OpenGL context is neither still necessary nor desirable.
|
2020-11-26 13:49:41 -05:00 |
|
Thomas Harte
|
b4bf541eec
|
Adds boilerplate route into a 2MG-handling class.
|
2020-11-23 21:42:18 -05:00 |
|
Thomas Harte
|
4359fb1746
|
Enables undefined-behaviour sanitiser.
|
2020-11-22 21:30:00 -05:00 |
|
Thomas Harte
|
4a42de4f18
|
Attempts to add 5.25" drive support to the IIgs.
I want to try some classic software.
|
2020-11-20 21:37:17 -05:00 |
|
Thomas Harte
|
bd8af25294
|
Merge branch 'master' into AppleIIgs
|
2020-11-13 21:27:47 -05:00 |
|
Thomas Harte
|
e803f993b7
|
Increases minimum macOS version to 10.14.
This is lazy, but it means I definitely don't need non-Metal fallback code.
|
2020-11-13 19:48:45 -05:00 |
|
Thomas Harte
|
5dbc87caf0
|
Smarter: just ensures any attached panels are closed at close().
|
2020-11-13 19:09:30 -05:00 |
|
Thomas Harte
|
4862ccc947
|
Dismisses ROM requester upon that cancel too.
|
2020-11-13 19:01:53 -05:00 |
|
Thomas Harte
|
e1ecf66485
|
Dismisses sheet before closing document.
|
2020-11-13 19:00:37 -05:00 |
|
Thomas Harte
|
2c71ba0744
|
Ameliorates against a potential NSRangeException.
|
2020-11-13 18:29:48 -05:00 |
|
Thomas Harte
|
a7aeb779e9
|
Disables Apple Silicon binaries until I have some means to test.
|
2020-11-13 18:07:45 -05:00 |
|
Thomas Harte
|
e72cfbf447
|
Stop assuming that NSNotification => window.isVisible.
|
2020-11-13 18:04:31 -05:00 |
|
Thomas Harte
|
0c04a376c4
|
Stop assuming that NSNotification => window.isVisible.
|
2020-11-13 18:03:46 -05:00 |
|
Thomas Harte
|
3c6dc4c448
|
Merge branch 'master' into AppleIIgs
|
2020-11-13 12:51:53 -05:00 |
|
Thomas Harte
|
86a24cc928
|
Allows Xcode to bump its versioning on the ROM requester too.
|
2020-11-13 12:23:48 -05:00 |
|
Thomas Harte
|
e8b52d20e9
|
Slightly tweaks machine picker for macOS Big Sur.
|
2020-11-13 12:14:35 -05:00 |
|
Thomas Harte
|
a15af1df5e
|
Attempts to use the other bit of disk drive control, the 5.25"/3.5" select.
For the record, the ROM thinks it finds some Smartport devices and then attempts to talk to them. Since none is present, it blocks forever.
|
2020-11-11 17:55:50 -05:00 |
|
Thomas Harte
|
6d3d7c6006
|
It seems like this fix is no longer needed.
|
2020-11-11 17:30:22 -05:00 |
|
Thomas Harte
|
7aea3dc124
|
Corrects R4G4B4 and R2G2B2 output.
|
2020-11-07 23:15:48 -05:00 |
|
Thomas Harte
|
93968d267d
|
Corrects R4G4B4 and R2G2B2 output.
|
2020-11-07 22:19:27 -05:00 |
|
Thomas Harte
|
4f9d06d8c7
|
Merge pull request #846 from MaddTheSane/maddsIIgs
Use url(forResource:... instead of path(forResource:…
|
2020-11-06 09:39:27 -05:00 |
|
C.W. Betts
|
189a468ad4
|
Use url(forResource:... instead of path(forResource:… as it cuts down on creating a URL struct.
|
2020-11-05 14:42:39 -07:00 |
|
C.W. Betts
|
a3414c2673
|
Update 65816kromTests.swift
Only have one runTest method.
|
2020-11-05 14:36:34 -07:00 |
|
Thomas Harte
|
5126163c5d
|
Attempts to reduce pull request heft.
Given that the licensing of krom's tests is uncertain, and I've given credit and an appropriate link, I needn't include the original code.
|
2020-11-04 21:49:45 -05:00 |
|