Thomas Harte
|
82205d71cc
|
Breaks up loop for arithmetic simplicity.
|
2021-07-27 21:59:27 -04:00 |
|
Thomas Harte
|
402eab10f8
|
Breaks video output while attempting to pull it into the main loop.
|
2021-07-27 21:33:07 -04:00 |
|
Thomas Harte
|
b6bf4d73ad
|
Blitter-finished bit aside, attempts to complete the Copper.
|
2021-07-27 21:10:14 -04:00 |
|
Thomas Harte
|
5425b5c423
|
Adds some form of WAITing to the Copper.
|
2021-07-27 19:32:55 -04:00 |
|
Thomas Harte
|
29cd8504ca
|
Implements enough Copper to get a first store.
|
2021-07-27 19:06:16 -04:00 |
|
Thomas Harte
|
3544746934
|
Modifies interface, starts on scheduler.
Probably corrects the pixel clock, which I think was scaled up by a factor of 4.
|
2021-07-27 16:41:18 -04:00 |
|
Thomas Harte
|
d8f814f1c4
|
If I'm going to push only a single colour, might as well make it fast.
|
2021-07-26 21:19:43 -04:00 |
|
Thomas Harte
|
a43175125a
|
Assuming I'm going to keep this synchronous, extends function signature.
|
2021-07-26 20:13:06 -04:00 |
|
Thomas Harte
|
1d03bc560a
|
Stores the colour palette, uses entry 0 as my new always output.
|
2021-07-26 18:59:11 -04:00 |
|
Thomas Harte
|
3832acf6e3
|
Produces a static white box, at least.
|
2021-07-26 18:51:01 -04:00 |
|
Thomas Harte
|
7894b50321
|
Starts towards an actual pixel output loop.
|
2021-07-26 18:44:20 -04:00 |
|
Thomas Harte
|
ffded619e6
|
Returns track 0 found, as a guess.
|
2021-07-26 18:44:01 -04:00 |
|
Thomas Harte
|
bcb7bb5cce
|
Improves logging further.
To investigate the new perpetual loop.
|
2021-07-26 17:02:30 -04:00 |
|
Thomas Harte
|
87dcd82f69
|
Makes a first attempt at some sort of interrupt functionality.
|
2021-07-26 16:40:42 -04:00 |
|
Thomas Harte
|
e671cc6056
|
Add stubs for joystick/mouse querying.
|
2021-07-26 16:21:51 -04:00 |
|
Thomas Harte
|
5da89b88a6
|
Add missing space.
|
2021-07-25 22:17:55 -04:00 |
|
Thomas Harte
|
5d60c1f20b
|
Stubs in Paula.
|
2021-07-25 22:16:31 -04:00 |
|
Thomas Harte
|
7fd00165c9
|
Switch to [hard-coded] PAL, for now.
In the hope that I get to see some graphics soon, this should better conform to my expectations.
|
2021-07-25 20:41:51 -04:00 |
|
Thomas Harte
|
20da194fab
|
Log slightly more accurately.
|
2021-07-25 19:59:24 -04:00 |
|
Thomas Harte
|
e3bb9fc1d7
|
Increase logging.
|
2021-07-23 23:10:00 -04:00 |
|
Thomas Harte
|
d898a43dff
|
Implements time-of-day counters, provisionally.
Interrupts to do.
|
2021-07-23 21:24:07 -04:00 |
|
Thomas Harte
|
86c30769d9
|
Add a divide-by-ten for the CIAs.
|
2021-07-23 19:25:53 -04:00 |
|
Thomas Harte
|
956a6dbd64
|
Improve commentary.
|
2021-07-23 19:23:54 -04:00 |
|
Thomas Harte
|
de208ead4e
|
Stubs in enough to get back into a persistent loop.
|
2021-07-22 22:00:53 -04:00 |
|
Thomas Harte
|
87d2fc1491
|
Adds enough raster position to return something.
|
2021-07-22 21:45:51 -04:00 |
|
Thomas Harte
|
2bc9af09e1
|
Factors out the chipset.
|
2021-07-22 21:16:23 -04:00 |
|
Thomas Harte
|
d1ac54fe92
|
Stubs in sprite containers.
|
2021-07-22 19:00:26 -04:00 |
|
Thomas Harte
|
9468adf737
|
Stubs in Copper addresses.
|
2021-07-22 18:51:23 -04:00 |
|
Thomas Harte
|
e85db40b0f
|
Sketches out a blitter class.
|
2021-07-22 18:43:07 -04:00 |
|
Thomas Harte
|
b3d55cc16d
|
Adds non-committal reads for some write-only registers.
The hardware now proceeds to trying to talk to the Blitter. So that's next.
|
2021-07-22 16:10:30 -04:00 |
|
Thomas Harte
|
3ee1fc544f
|
Fix: (1) memory base adjustment; (2) out-of-bounds writes.
|
2021-07-21 21:49:20 -04:00 |
|
Thomas Harte
|
ba2e5a97a9
|
Provisionally adds a status LED.
|
2021-07-19 22:31:36 -04:00 |
|
Thomas Harte
|
4515d1220c
|
Switches CIA A/B byte connections; applies reset to memory map.
|
2021-07-19 22:17:40 -04:00 |
|
Thomas Harte
|
486959bce8
|
With minor additional logging, it appears the Amiga just keeps resetting itself.
|
2021-07-19 21:50:35 -04:00 |
|
Thomas Harte
|
e1a410bf3d
|
Further mildly increases logging.
|
2021-07-19 20:54:32 -04:00 |
|
Thomas Harte
|
3767cc7c0b
|
Increase logging; fix set/clear of interrupt enable mask.
|
2021-07-19 19:03:37 -04:00 |
|
Thomas Harte
|
96b0ce9ef2
|
Merge branch 'master' into Amiga
|
2021-07-18 22:16:05 -04:00 |
|
Thomas Harte
|
cfaf4a8a65
|
Add advised brackets; clarify type punning.
|
2021-07-18 22:11:11 -04:00 |
|
Thomas Harte
|
22dd8a8847
|
Stubs onward to a second endless loop.
|
2021-07-18 20:55:33 -04:00 |
|
Thomas Harte
|
3e2bac8129
|
Stubs in enough to get to a permanent loop.
|
2021-07-18 20:25:43 -04:00 |
|
Thomas Harte
|
c425dec4d5
|
Makes some attempt to get as far as the overlay being disabled.
|
2021-07-18 17:17:41 -04:00 |
|
Thomas Harte
|
622cca0acf
|
Adds sufficient address decoding to print a more helpful exit message.
|
2021-07-18 12:13:56 -04:00 |
|
Thomas Harte
|
48999c03a5
|
Adds concept of time, captured port handler.
|
2021-07-18 11:49:10 -04:00 |
|
Thomas Harte
|
b1616be4b8
|
Gets to what is probably a CIA access?
|
2021-07-17 21:36:20 -04:00 |
|
Thomas Harte
|
a0a9a72d8f
|
Begins sketching out a memory mapper.
|
2021-07-17 21:10:06 -04:00 |
|
Thomas Harte
|
f7de6f790c
|
Meanders vaguely towards a memory map.
|
2021-07-16 21:42:17 -04:00 |
|
Thomas Harte
|
d1f3b5ed80
|
Obtains a Kickstart ROM, adds a 68000.
|
2021-07-16 21:07:12 -04:00 |
|
Thomas Harte
|
7925dcc5a2
|
Advances far enough for the Amiga to be autonomous.
|
2021-07-16 20:49:12 -04:00 |
|
Thomas Harte
|
6ade36bf09
|
Adds an empty shell of a machine.
|
2021-07-16 20:30:48 -04:00 |
|
Thomas Harte
|
5bfedff8d1
|
Mutate dangling printf to a LOG.
|
2021-07-16 17:32:05 -04:00 |
|
Thomas Harte
|
b41e29a83b
|
Slows CPC typer to avoid dropped characters.
|
2021-07-15 21:54:02 -04:00 |
|
Thomas Harte
|
52ea3b741c
|
Introduces a presentation flag for LEDs.
All existing receivers ignore it.
|
2021-07-15 21:26:02 -04:00 |
|
Thomas Harte
|
af1ade9433
|
Introduces Amiga ROMs to the catalogue.
|
2021-07-15 21:09:20 -04:00 |
|
Thomas Harte
|
a4c011e3c0
|
Flip meaning of INT1 input read.
|
2021-07-09 22:39:51 -04:00 |
|
Thomas Harte
|
6225abd751
|
Adds 6MHz Enterprise option.
|
2021-07-07 20:57:04 -04:00 |
|
Thomas Harte
|
0e49258546
|
Remove caveman debugging.
|
2021-07-06 23:15:53 -04:00 |
|
Thomas Harte
|
264b8dfb28
|
Dave: apply ring modulation even in sync mode.
|
2021-07-06 23:11:30 -04:00 |
|
Thomas Harte
|
5167d256cc
|
Remove detritus.
|
2021-07-06 22:43:17 -04:00 |
|
Thomas Harte
|
16bd826491
|
Reduce nesting.
|
2021-07-06 22:32:59 -04:00 |
|
Thomas Harte
|
55af8fa5d9
|
Avoid erroneous Nick delays.
|
2021-07-06 22:28:44 -04:00 |
|
Thomas Harte
|
1ec8ff20af
|
Ensure data bus is 0xff during interrupts.
|
2021-07-06 21:58:17 -04:00 |
|
Thomas Harte
|
7a673a2448
|
Avoid confusing temporary storage.
|
2021-07-06 20:23:09 -04:00 |
|
Thomas Harte
|
33e2a4b21c
|
Minor cleanups.
|
2021-07-06 20:20:13 -04:00 |
|
Thomas Harte
|
3e6b804896
|
Switches to linked 1/50/1000 Hz timers, and per-interrupt state toggling.
|
2021-07-06 20:12:44 -04:00 |
|
Thomas Harte
|
c20e8f4062
|
Honours 8/12Mhz selection in non-video delays.
|
2021-07-03 23:05:09 -04:00 |
|
Thomas Harte
|
4add48cffb
|
Obey Dave's 8/12MHz programmable divider.
|
2021-07-03 22:43:20 -04:00 |
|
Thomas Harte
|
43ceca8711
|
Use type alias.
|
2021-07-03 19:10:39 -04:00 |
|
Thomas Harte
|
3ef28a4f03
|
Remove unused instance variable.
|
2021-07-03 19:10:29 -04:00 |
|
Thomas Harte
|
5715c9183f
|
The target is now definitely used.
|
2021-07-03 15:20:37 -04:00 |
|
Thomas Harte
|
196651d9aa
|
Consolidates TODO.
|
2021-07-03 13:08:53 -04:00 |
|
Thomas Harte
|
6b46212a4e
|
Deal with dangling TODO.
|
2021-07-03 13:07:41 -04:00 |
|
Thomas Harte
|
2a6fff2008
|
Takes a stab at what might happen if you read from Nick.
|
2021-07-03 13:06:07 -04:00 |
|
Thomas Harte
|
c5944efe50
|
Adds various method definitions.
|
2021-07-03 12:56:56 -04:00 |
|
Thomas Harte
|
f384370b18
|
Switch what's left of Enterprise logging to actual LOGs.
|
2021-07-03 12:50:46 -04:00 |
|
Thomas Harte
|
278671cdb9
|
Correct Nick interrupt prediction.
|
2021-07-03 00:05:13 -04:00 |
|
Thomas Harte
|
964d2d4fa4
|
Be consistent in expression of logic.
|
2021-07-03 00:00:00 -04:00 |
|
Thomas Harte
|
283092cfbc
|
With a unit test in aid, corrects some lingering TimedInterruptSource issues.
|
2021-07-02 23:41:19 -04:00 |
|
Thomas Harte
|
614953a222
|
Allows the low-pass filter to react to high-pass effects.
|
2021-07-02 22:36:35 -04:00 |
|
Thomas Harte
|
4fffb3cf19
|
Allow that final Z80 cycle to start anywhere in the first three of Nick's window of six.
|
2021-07-02 22:29:35 -04:00 |
|
Thomas Harte
|
d715e5fd1d
|
Expose composite/RGB option in Qt.
|
2021-07-02 21:51:48 -04:00 |
|
Thomas Harte
|
7826a26c7b
|
Adds Enterprise composite video option.
While enabling more pixels on the left for RGB mode.
|
2021-07-02 21:42:09 -04:00 |
|
Thomas Harte
|
763b9ba0ec
|
Ensure the splash screen is skipped for self-booting disks.
|
2021-07-02 21:11:54 -04:00 |
|
Thomas Harte
|
51d98ef9ab
|
Add missing stddef header where size_t is used.
|
2021-07-01 23:15:32 -04:00 |
|
Thomas Harte
|
742d44a532
|
Switch to an activity-based typing trigger; add a target loading command.
|
2021-07-01 22:53:23 -04:00 |
|
Thomas Harte
|
52b96db2b9
|
Correct syntax, mapping and inter-key timing.
|
2021-07-01 21:18:15 -04:00 |
|
Thomas Harte
|
0b9de78c38
|
Add typer support for the Enterprise.
|
2021-07-01 21:05:03 -04:00 |
|
Thomas Harte
|
1c424833a9
|
Correct EXDOS ROM name.
|
2021-06-29 21:04:53 -04:00 |
|
Thomas Harte
|
3d8fc9952d
|
Remove dead TODO, correct for overflow position.
|
2021-06-29 15:44:02 -04:00 |
|
Thomas Harte
|
8ce8fbd977
|
Provide correct input when one of the tone generators is the interrupt source.
|
2021-06-29 15:41:08 -04:00 |
|
Thomas Harte
|
7f08218b28
|
The Nick interrupt input also seems to be a live poll, not a retrieval of the mask.
This corrects the two pieces of software I knew not to be working.
|
2021-06-28 22:10:11 -04:00 |
|
Thomas Harte
|
2c139ad931
|
Adds some notes to self.
I think I'm starting to find enough information to handle tapes.
|
2021-06-28 22:03:06 -04:00 |
|
Thomas Harte
|
1119779c8b
|
Ensure EXDOS card is completely disabled if no FDC is present.
|
2021-06-28 21:47:53 -04:00 |
|
Thomas Harte
|
5351ac560f
|
Ensure the motor goes off for unselected drives.
|
2021-06-28 21:40:12 -04:00 |
|
Thomas Harte
|
49f0ab0f15
|
Add note to self.
Although I still think there may be some issue lurking.
|
2021-06-28 21:31:55 -04:00 |
|
Thomas Harte
|
a5c57e777e
|
VRES appears to work negatively in attribute mode too.
|
2021-06-28 21:24:13 -04:00 |
|
Thomas Harte
|
3c59042388
|
Fixes initial state for 1kHz.
|
2021-06-28 21:08:41 -04:00 |
|
Thomas Harte
|
919e211bc4
|
Reduces number of interrupt-related sequence points.
|
2021-06-28 19:30:12 -04:00 |
|
Thomas Harte
|
daa0737ce4
|
Ensure addresses tick upwards even during sync/burst; correct 2/4/8bpp character sizing.
|
2021-06-28 19:00:51 -04:00 |
|
Thomas Harte
|
36805cb120
|
Correct tone channel interrupts, remove dead warning.
|
2021-06-27 23:21:00 -04:00 |
|
Thomas Harte
|
7de69e9874
|
Makes an attempt to round out the timed interrupts.
|
2021-06-27 23:09:11 -04:00 |
|
Thomas Harte
|
b93575bbcc
|
Spots that b0 and b2 of 0xb4 are 'dividers', not enables.
|
2021-06-27 22:33:20 -04:00 |
|
Thomas Harte
|
116e0f0105
|
Interupts 1kHz and 50Hz interrupts, while edging towards tone generator interrupts.
|
2021-06-27 22:08:38 -04:00 |
|
Thomas Harte
|
e4a650aaff
|
Implements the 1Hz interrupt.
|
2021-06-27 21:47:21 -04:00 |
|
Thomas Harte
|
b5312b9ba0
|
get_interrupt_line can be const.
|
2021-06-27 21:37:11 -04:00 |
|
Thomas Harte
|
6afee7bb9b
|
Captures appropriate fields.
No action yet.
|
2021-06-27 21:36:55 -04:00 |
|
Thomas Harte
|
2f53b105bb
|
The Enterprise is now an Activity::Source; also sketches out the owner of Dave's timed interrupt logic.
|
2021-06-27 21:02:04 -04:00 |
|
Thomas Harte
|
be19fa9dde
|
This mapping needs to know where it will occur.
|
2021-06-27 17:30:09 -04:00 |
|
Thomas Harte
|
81e9ba5608
|
This is correct from the Enterprise's side of things, I think.
I just need to complete the missing part of JustInTimeActor. After I do some empirical testing of this.
|
2021-06-27 17:24:21 -04:00 |
|
Thomas Harte
|
f2d7b9f6a9
|
Apply a crop, allow time until Z80 slot to be a future-based query.
|
2021-06-27 17:13:07 -04:00 |
|
Thomas Harte
|
1ea034310a
|
Edge up very close to video waits.
I just need to implement back conversions that include marginal phase over in the JustInTimeActor.
|
2021-06-27 16:28:01 -04:00 |
|
Thomas Harte
|
10bf6744aa
|
Correct typo.
|
2021-06-27 16:26:55 -04:00 |
|
Thomas Harte
|
895d98e266
|
Implements out-of-video-area pauses.
|
2021-06-27 16:11:22 -04:00 |
|
Thomas Harte
|
903e343895
|
Attempts to complete Dave's audio duties.
|
2021-06-27 14:06:49 -04:00 |
|
Thomas Harte
|
f8b7c59616
|
Corrects tone frequency.
|
2021-06-26 23:51:43 -04:00 |
|
Thomas Harte
|
fcd267a3f9
|
Starts implementing noise.
|
2021-06-26 23:48:53 -04:00 |
|
Thomas Harte
|
f8bb66d2a0
|
Attempts an essentially-complete implementation of tone channels.
|
2021-06-26 23:39:59 -04:00 |
|
Thomas Harte
|
f2336d2efc
|
I think reloads occur after overflow, not before.
|
2021-06-26 23:16:00 -04:00 |
|
Thomas Harte
|
c2d093fa3c
|
Respect user volume input.
Basic tones are now present. Neato!
|
2021-06-24 22:27:02 -04:00 |
|
Thomas Harte
|
1a97cc8a91
|
Start making some effort towards audio generation.
|
2021-06-24 22:21:01 -04:00 |
|
Thomas Harte
|
c34a548fa0
|
Ensure character pixel reads can't go out of bounds.
|
2021-06-24 22:19:50 -04:00 |
|
Thomas Harte
|
520c3c9218
|
Corrects colour deserialisation.
Long story short: the documentation I'm reading inexplicably lists the bits in reverse order. Luckily, a lot of the other documentation doesn't.
|
2021-06-24 20:59:04 -04:00 |
|
Thomas Harte
|
9230cf1726
|
Corrects bug when left_ or right_margin_ = 0.
|
2021-06-24 20:28:50 -04:00 |
|
Thomas Harte
|
6e616972a5
|
Better binds margin tests to window movements; simplifies line parameter addressing.
|
2021-06-24 18:55:15 -04:00 |
|
Thomas Harte
|
f98888824d
|
Switches to an overt active/inactive state machine.
|
2021-06-24 18:34:21 -04:00 |
|
Thomas Harte
|
6c8b23e708
|
Alters 4bpp mapping; adds character mode 4bpp and 8bpp.
|
2021-06-23 19:35:47 -04:00 |
|
Thomas Harte
|
2c2bb3765f
|
Withdraws the EPDOS option.
At least for now; it's something to worry about later.
|
2021-06-23 19:32:34 -04:00 |
|
Thomas Harte
|
0d165740ea
|
Honours memory size request.
|
2021-06-22 21:48:55 -04:00 |
|
Thomas Harte
|
8319aca351
|
Correct syntax errors.
|
2021-06-22 20:50:03 -04:00 |
|
Thomas Harte
|
a66734883a
|
Starts sketching out Dave.
|
2021-06-22 19:33:41 -04:00 |
|
Thomas Harte
|
e062780968
|
Extends back to 128kb and stops halting on unrecognised ports.
|
2021-06-22 06:15:42 -04:00 |
|
Thomas Harte
|
3acd0be1f7
|
Copy and paste 2bpp character support.
|
2021-06-21 23:27:13 -04:00 |
|
Thomas Harte
|
c1678d7be7
|
Corrects exposition and transmission of drive selection.
What a klutz I've been.
|
2021-06-21 22:56:25 -04:00 |
|
Thomas Harte
|
117f9a9794
|
Adds notes on intended meaning of status register.
|
2021-06-21 07:31:58 -04:00 |
|
Thomas Harte
|
b49cc407c6
|
Adds some guesses as to the EXDos expansion.
... with plenty left to do.
|
2021-06-20 22:30:27 -04:00 |
|
Thomas Harte
|
954386f1cc
|
Creates a shell for the disk-drive add-on card.
|
2021-06-20 20:50:23 -04:00 |
|
Thomas Harte
|
d7ff6bd04d
|
Adds necessary declarations to install a DOS ROM.
|
2021-06-20 20:30:54 -04:00 |
|
Thomas Harte
|
6025516f9f
|
Ensure addresses increment even when there's no target for pixels.
|
2021-06-20 14:31:02 -04:00 |
|
Thomas Harte
|
d8b9cdf7a2
|
Correct multiplier.
|
2021-06-20 14:25:37 -04:00 |
|
Thomas Harte
|
09dbff39f2
|
Also map keypad to F keys.
This is a pragmatic and arguably Apple-centric decision. But also it's fairly arbitrary, as the Enterprise doesn't have a number pad.
|
2021-06-20 14:25:28 -04:00 |
|
Thomas Harte
|
2fe15a6168
|
Switch to idealised Nick clock rate.
|
2021-06-20 14:21:56 -04:00 |
|
Thomas Harte
|
07dc26f8fa
|
Adds TODO to resolve screen jumping.
|
2021-06-19 23:41:29 -04:00 |
|
Thomas Harte
|
0e1e8c7faa
|
Attempts to support the panoply of EXOS and BASIC versions.
|
2021-06-19 22:59:09 -04:00 |
|
Thomas Harte
|
42a98e1676
|
Fix composition with empty nodes.
|
2021-06-19 22:13:17 -04:00 |
|
Thomas Harte
|
23e26e0333
|
Attempts to complete handling of VRES.
|
2021-06-19 22:00:19 -04:00 |
|
Thomas Harte
|
fadb04f3f3
|
Attempts to implement LSBALT and MSBALT.
|
2021-06-19 21:57:26 -04:00 |
|
Thomas Harte
|
4968ccf46d
|
Corrects attributed mode.
|
2021-06-19 13:08:14 -04:00 |
|
Thomas Harte
|
1dcac304d3
|
Implements the ALTIND bits and attempts ATTR mode.
|
2021-06-19 13:04:18 -04:00 |
|
Thomas Harte
|
1651efe4fc
|
Ensures all keys are initially unpressed.
|
2021-06-19 13:03:31 -04:00 |
|
Thomas Harte
|
8f24aed43e
|
Slightly reduces logging.
|
2021-06-18 23:17:44 -04:00 |
|
Thomas Harte
|
a381374e31
|
Drops back down to 64kb.
|
2021-06-18 23:14:44 -04:00 |
|