Thomas Harte
fdef8901ab
Double down on uint32_t.
2024-03-08 14:13:34 -05:00
Thomas Harte
a46ec4cffb
Up clock rate to 24Mhz.
2024-03-07 22:16:58 -05:00
Thomas Harte
9bb5dc3c2b
Fix inclusive range.
2024-03-07 19:40:34 -05:00
Thomas Harte
f6ea442606
Include various debugging detritus.
2024-03-07 14:28:39 -05:00
Thomas Harte
15ee84b2eb
Fix MUL ambiguity.
2024-03-07 11:45:39 -05:00
Thomas Harte
d380cecdb7
Add timers that count.
2024-03-07 11:39:26 -05:00
Thomas Harte
ae3cd924e8
Add a 2Mhz tick for timers.
2024-03-07 11:12:40 -05:00
Thomas Harte
a0f0f73bde
Fix MOV as unconditional branch.
2024-03-07 10:31:26 -05:00
Thomas Harte
7cdceb7b4f
Add a specific shout-out on prefetch abort, for debugging.
2024-03-07 10:23:46 -05:00
Thomas Harte
38b5624639
Add a little more VIDC detail.
2024-03-07 10:05:22 -05:00
Thomas Harte
3405b3b287
Add power-on bit, moving problems forward.
2024-03-06 22:14:56 -05:00
Thomas Harte
173fc9329a
Add a little protection logic.
2024-03-06 22:00:34 -05:00
Thomas Harte
691a42d81e
Attempt some logical mapping.
2024-03-06 21:51:19 -05:00
Thomas Harte
4059905f85
Slightly reorder messaging.
2024-03-06 16:45:17 -05:00
Thomas Harte
bbb520fd12
Transcribe some notes.
2024-03-06 15:31:07 -05:00
Thomas Harte
108a056f1c
Execution now runs into a prefetch abort loop.
2024-03-06 15:05:24 -05:00
Thomas Harte
ed92e98ca2
Start looking at address translation.
2024-03-06 14:56:06 -05:00
Thomas Harte
0d666f9935
Get a bit more rigorous about reporting.
2024-03-06 09:54:39 -05:00
Thomas Harte
387791635e
Start to establish a memory map.
2024-03-04 21:43:06 -05:00
Thomas Harte
b7a1363add
Add an incorrect execution loop.
2024-03-04 21:09:24 -05:00
Thomas Harte
1f43047de8
Loop the ARM executor into the build.
2024-03-04 12:08:46 -05:00
Thomas Harte
6f0ad0ab71
Add an empty Archimedes shell.
2024-03-04 12:06:43 -05:00
Thomas Harte
3e80651a0e
Collect 'Electron' under 'Acorn'.
2024-03-04 11:31:25 -05:00
Thomas Harte
e27312c980
Add to machine lists.
2024-03-04 10:19:06 -05:00
Thomas Harte
c0dd96eb7c
Add a catalogue entry for RISC OS.
2024-03-02 21:44:27 -05:00
Thomas Harte
1449b2a2a6
Merge pull request #1347 from TomHarte/AppleIIFlashRate
...
Double Apple II flash rate.
2024-02-28 22:21:05 -05:00
Thomas Harte
0f691766ee
Double flash rate.
2024-02-28 22:13:22 -05:00
Thomas Harte
98f5d0cdb7
Propagate reset to the auxiliary switches.
2024-02-28 21:36:55 -05:00
Thomas Harte
bc5727af14
Switch to = default
.
2024-02-16 21:50:15 -05:00
Thomas Harte
e8036127fe
Add some commentary.
2024-02-16 09:19:22 -05:00
Thomas Harte
17abd87791
Remove further !!s.
2024-02-16 08:57:43 -05:00
Thomas Harte
35545451fe
Apply applicable deferred actions before lookahead.
2024-02-16 08:56:01 -05:00
Thomas Harte
fadd3bc6fc
Eliminate 'unused' error.
2024-02-15 13:57:11 -05:00
Thomas Harte
d9ec11c62e
Use logger instead of printf.
2024-02-15 13:55:46 -05:00
Thomas Harte
093a029b8c
Further reduce printf footprint.
2024-02-15 13:41:35 -05:00
Thomas Harte
be99183f1d
Remove outdated TODO.
2024-02-15 13:26:03 -05:00
Thomas Harte
a09457dab5
Fix IOSEL and DEVSEL assignments.
2024-02-15 10:29:30 -05:00
Thomas Harte
51de1892c0
With minor infrastructure fixes, switch Mockingboard to stereo.
2024-02-15 09:42:33 -05:00
Thomas Harte
cb22278c7f
Switch meaning of bit 2.
2024-02-15 08:54:52 -05:00
Thomas Harte
809bc9d6a8
Add TODO.
2024-02-14 22:46:57 -05:00
Thomas Harte
be11f31d5d
Support reset.
2024-02-14 22:22:42 -05:00
Thomas Harte
0103761b7b
Corrects AY audio tone.
2024-02-14 22:16:37 -05:00
Thomas Harte
3ac5fdafab
Enables AY audio, albeit underclocked.
2024-02-14 22:15:21 -05:00
Thomas Harte
1e877c7563
Add a clock to the 6522s, enable interrupts.
2024-02-14 22:01:03 -05:00
Thomas Harte
07c11e8268
Begin 6522 wiring.
2024-02-14 15:18:19 -05:00
Thomas Harte
0dcceff410
There's actually two AYs.
2024-02-14 14:31:38 -05:00
Thomas Harte
2a684ab302
Include a single AY in the mix if appropriate.
2024-02-14 10:55:53 -05:00
Thomas Harte
27059233b3
Use sample source to simplify stretching AY.
2024-02-13 22:38:18 -05:00
Thomas Harte
7f84d5ac6f
Merge branch 'master' into Mockingboard
2024-02-13 14:46:59 -05:00
Thomas Harte
6dcc13921f
Make first sweep at converting AY to a SampleSource.
2024-02-13 10:51:33 -05:00
Thomas Harte
f14e45f93e
Remove various instances of ';;'.
2024-02-12 14:23:54 -05:00
Thomas Harte
1895b4ee5d
Remove empty implementation, the better for debugging.
2024-02-12 13:59:03 -05:00
Thomas Harte
d49c07687c
Unify [get_/skip_]samples, adding a third option for in-place mixing.
2024-02-12 10:55:52 -05:00
Thomas Harte
609d81d75d
Distinguish sources of samples and of whole buffers.
2024-02-09 14:25:40 -05:00
Thomas Harte
c105acf1c7
Adopt a full type for stereo samples, gaining + and +=.
2024-02-09 10:48:42 -05:00
Thomas Harte
f3d0827d14
Introduce [Mono/Stereo]Sample types.
2024-02-09 09:15:48 -05:00
Thomas Harte
a4a983eb81
Promote stereo status to template parameter.
2024-02-08 15:21:47 -05:00
Thomas Harte
228012cd0c
Make a further deployment of std::fill
.
2024-02-01 22:03:13 -05:00
Thomas Harte
c6c9be0b08
Adopt CRTP for SampleSource.
2024-02-01 21:47:44 -05:00
Thomas Harte
ce0d53b277
Clean up SampleSource's getters.
2024-02-01 21:29:00 -05:00
Thomas Harte
17cad73177
Attempt an implementation of StretchedAudioSource
.
2024-01-29 16:45:20 -05:00
Thomas Harte
15b5a62e01
Mockingboard: start sketching out intermediate clocking.
2024-01-23 22:05:30 -05:00
Thomas Harte
d3cea4a10f
Note that arguments may be unused.
2024-01-21 21:19:51 -05:00
Thomas Harte
a6df20ff84
Eliminate printf.
2024-01-21 21:19:38 -05:00
Thomas Harte
7122a9ee16
Add missing include of cstdint.
2024-01-21 21:08:04 -05:00
Thomas Harte
b08c7f8b68
Remove dangling LOG_PREFIXs.
2024-01-19 22:19:35 -05:00
Thomas Harte
0c2a4f442e
Resolve all commented-out old logging references.
2024-01-19 22:17:35 -05:00
Thomas Harte
18814f7b2c
Update use of logging.
2024-01-19 22:14:24 -05:00
Thomas Harte
b61317ba7e
Continue conversion of logging.
2024-01-19 22:02:26 -05:00
Thomas Harte
7e47329e2a
Update use of logger.
2024-01-19 14:16:13 -05:00
Thomas Harte
a402e30edf
Combine all per-bank information into a single struct.
...
(while fixing the indexing type)
2024-01-17 09:44:07 -05:00
Thomas Harte
16baa05aec
Correct type.
2024-01-17 09:43:44 -05:00
Thomas Harte
108c584ddb
Comment out unused macros.
2024-01-16 23:40:52 -05:00
Thomas Harte
a3d37640aa
Switch include guards to #pragma once
.
2024-01-16 23:34:46 -05:00
Thomas Harte
a315deb60c
Eliminate palette macro.
2024-01-16 14:32:04 -05:00
Thomas Harte
9ea71c97db
Consolidate on std::array.
2024-01-16 14:28:15 -05:00
Thomas Harte
a047c6493a
Eliminate joystick macros.
2024-01-16 14:26:55 -05:00
Thomas Harte
3ab6953246
Avoid use of raw pointers in machine creation.
2024-01-12 22:03:19 -05:00
Thomas Harte
ed91956c30
Add missing #include.
2024-01-04 11:21:32 -05:00
Thomas Harte
24d64bf788
ROM is never shadowed; also add assert
.
2024-01-04 11:17:20 -05:00
Thomas Harte
386f572e9a
Add assert.
2024-01-04 11:11:26 -05:00
Thomas Harte
dae80217bc
Adjust names of the newly-private.
2024-01-04 10:36:33 -05:00
Thomas Harte
bfbaebb661
Improve const correctness.
2024-01-04 10:29:38 -05:00
Thomas Harte
4affbe7556
Relocate using
.
2024-01-04 10:28:41 -05:00
Thomas Harte
c151a73059
Remove dead srand
.
2024-01-04 10:25:39 -05:00
Thomas Harte
ae48f05c80
Shuffle most of the MemoryMap ugliness into a source file.
2024-01-04 10:25:27 -05:00
Thomas Harte
cd7a152bed
Remove a lot of dead logging detritus.
2024-01-04 09:59:46 -05:00
Thomas Harte
9cc37945b7
Avoid over-logging.
2024-01-04 09:57:01 -05:00
Thomas Harte
cf00a709ec
Be consistent in shadowing physical addresses.
2024-01-03 15:02:54 -05:00
Thomas Harte
bbaaa520c8
Eliminate MemoryMap access macros, fix tests target.
2024-01-03 13:21:39 -05:00
Thomas Harte
d01c306187
Pull PagingType::Main
to top, eliminate macros.
2024-01-03 11:40:04 -05:00
Thomas Harte
2447029631
Don't page if acknowleding interrupts.
2024-01-02 22:23:40 -05:00
Thomas Harte
34b98be6d4
Merge branch 'master' into CRTC16bit
2024-01-01 22:34:48 -05:00
Thomas Harte
344fec0683
Fix Apple II inverse text errors.
2024-01-01 22:08:06 -05:00
Thomas Harte
26123bf399
Mostly hide state.
2024-01-01 15:15:40 -05:00
Thomas Harte
2698ac2d0f
Comment and clarify.
2024-01-01 09:33:20 -05:00
Thomas Harte
a58f643b4d
Improve repeat behaviour.
2023-12-31 15:21:20 -05:00
Thomas Harte
1b5b3e575c
Add repeat-only functionality.
2023-12-29 14:45:48 -05:00
Thomas Harte
ffb992d04a
Erase done TODO.
2023-12-28 15:07:39 -05:00
Thomas Harte
9344f6a824
Indicate whether a keypress is a repeat. Treat appropriately in the Apple II.
2023-12-28 15:05:55 -05:00
Thomas Harte
a617f7305a
Move personality into type.
2023-12-27 16:15:52 -05:00
Thomas Harte
574de0dbf3
Further reduce state.
2023-12-27 11:25:47 -05:00
Thomas Harte
3793fbd978
Remove much unused storage; add virtual destructor.
2023-12-27 11:14:08 -05:00
Thomas Harte
d6073e0407
Fix typo, add bonus comment.
2023-12-27 10:52:43 -05:00
Thomas Harte
001b161568
Treat speed as more of a runtime selection.
2023-12-27 10:44:51 -05:00
Thomas Harte
11c7f2ee6e
Make GlaTICK optional.
2023-12-27 10:10:42 -05:00
Thomas Harte
29ed449373
Add EGA and VGA ROMs.
2023-12-27 10:05:41 -05:00
Thomas Harte
14e9ae014c
Remove caveman log.
2023-12-25 18:44:11 -05:00
Thomas Harte
16b646ad2e
Treat reset as a continuing state.
2023-12-25 18:43:35 -05:00
Thomas Harte
fc9bea5b32
Iterate forwards.
2023-12-25 14:58:01 -05:00
Thomas Harte
0537e59486
Add RAM.
2023-12-25 14:35:24 -05:00
Thomas Harte
f58ab0d00d
Default to 24-hour mode.
2023-12-24 17:37:52 -05:00
Thomas Harte
bf9743cb38
Keep as regular int.
2023-12-24 14:16:12 -05:00
Thomas Harte
3e328bed61
Be overt about jump size, albeit without internal rigour.
2023-12-24 14:11:41 -05:00
Thomas Harte
54f1c31c94
Apply changes on trailing edges only.
2023-12-22 18:38:43 -05:00
Thomas Harte
85f814c632
Attempt to build fixed operations into type.
...
This simplifies callees and should make all helper functions automatically able to optimise themselves for fixed operations.
2023-12-21 23:08:18 -05:00
Thomas Harte
213dfe037d
Shift operation stuff into its own namespace, making data_select_active a free function.
2023-12-21 16:03:53 -05:00
Thomas Harte
faaa89bb67
Eliminate all reference to EmuTOS.
2023-12-21 15:28:45 -05:00
Thomas Harte
98be6e690f
Fully expose the PC to SDL, etc.
2023-12-21 13:01:41 -05:00
Thomas Harte
abea3d10cc
Merge pull request #1270 from ryandesign/MacSDL
...
SDL build improvements
2023-12-18 21:58:30 -05:00
Thomas Harte
a779b4668e
Merge pull request #1269 from ryandesign/typos
...
Fix typos
2023-12-18 21:56:23 -05:00
Thomas Harte
08287edd61
Don't disable the colour burst in mixed mode.
2023-12-18 16:26:02 -05:00
Ryan Carsten Schmidt
5ef6b190af
Fix typos
2023-12-16 03:53:07 -06:00
Ryan Carsten Schmidt
d12316dfcf
Change phase from int to uint8_t
...
output_colour_burst expects a uint8_t so may as well make that clear.
2023-12-15 04:49:13 -06:00
Ryan Carsten Schmidt
81ad864659
Fix OpenGL Apple II colors
...
Adjust phase by 90 degress.
Closes #872
2023-12-15 04:48:32 -06:00
Thomas Harte
5033d2046a
Support auto-EOI.
2023-12-12 14:02:46 -05:00
Thomas Harte
2db04eb671
Add TODO list.
2023-12-12 10:59:43 -05:00
Thomas Harte
0c98a78bb5
Support specific EOIs.
2023-12-12 10:55:49 -05:00
Thomas Harte
d523242e08
Add TODO.
2023-12-12 09:35:05 -05:00
Thomas Harte
070f8d8bc3
Simplify control flow.
2023-12-12 09:29:28 -05:00
Thomas Harte
add3257258
Switch to using a Parser
rather than duplicating one.
2023-12-11 19:13:37 -05:00
Thomas Harte
05bfab47d2
Merge branch 'master' into PCHD
2023-12-10 23:15:33 -05:00
Thomas Harte
7b9cc2332e
Extend amount of time it takes keyboard to reset.
2023-12-10 22:44:24 -05:00
Thomas Harte
04d75a3ab8
Return proper day-of-the-month value.
2023-12-10 22:44:08 -05:00
Thomas Harte
98e05fb0e3
Introduce high-density tracks.
2023-12-10 22:17:23 -05:00
Thomas Harte
f823310fe3
Add an appropriate crop.
2023-12-08 14:29:23 -05:00
Thomas Harte
604fca7fb1
Revise colour burst phase guess.
2023-12-08 11:55:00 -05:00
Thomas Harte
e703721271
Tie snow avoidance to avoiding DEN.
2023-12-08 11:02:41 -05:00
Thomas Harte
664890cead
Expose speed as an option.
2023-12-08 10:46:59 -05:00
Thomas Harte
3a103217d1
Add a compiletime 'turbo' flag for sort-of-80286 speeds.
2023-12-08 09:38:55 -05:00
Thomas Harte
4bfde2f30f
Mostly silence PC.
2023-12-07 22:11:49 -05:00
Thomas Harte
2966a82690
Merge pull request #1258 from TomHarte/DiskWrite
...
Respond appropriately if a write is attempted.
2023-12-07 22:08:07 -05:00
Thomas Harte
d61d80afec
It seems that write protection ends in not-ready.
2023-12-07 16:50:12 -05:00
Thomas Harte
1985d7da6a
Do something on a write rather than nothing.
2023-12-07 16:45:21 -05:00
Thomas Harte
75b6030516
Don't lose brown upon a blink.
2023-12-07 14:53:59 -05:00
Thomas Harte
e691cc8723
Retain dark yellow for composite output.
2023-12-07 14:21:09 -05:00
Thomas Harte
c5745f71f6
Reduce repetition, map dark yellow to brown.
2023-12-07 13:11:20 -05:00
Thomas Harte
71069bef0f
Correct get_scaled_scan_status.
2023-12-07 12:18:03 -05:00
Thomas Harte
8608f0f89d
Adjust CGA clocking down by 1/7th.
2023-12-07 12:05:15 -05:00
Thomas Harte
fc63fcb751
Unify usages of output_level
for border.
2023-12-07 11:04:18 -05:00
Thomas Harte
ad78a03300
Default to CGA40 if starting a new composite PC.
2023-12-07 10:14:06 -05:00
Thomas Harte
0f22ee5de4
Add TODO.
2023-12-07 10:08:43 -05:00
Thomas Harte
83cfacc0a5
Update TODOs.
2023-12-07 10:03:52 -05:00
Thomas Harte
ef0c3549d2
Attempt but fail to indicate PM.
2023-12-06 23:28:16 -05:00
Thomas Harte
e3119a4904
Hack in read-only versions of the main registers.
2023-12-06 23:25:34 -05:00
Thomas Harte
5fde3b8d5d
Wire up a stub RTC plus appropriate option ROM.
2023-12-06 22:56:09 -05:00
Thomas Harte
b385e6edad
Revise guess as to address wrapping.
2023-12-06 22:03:24 -05:00
Thomas Harte
8645a4b7b1
Walk further towards user display configuration.
2023-12-06 14:44:59 -05:00
Thomas Harte
ff000a5792
Support remainder of colour control.
2023-12-06 14:38:43 -05:00
Thomas Harte
1c7f8841f4
Avoid potential lengthy startup; work towards display option.
2023-12-06 13:55:41 -05:00
Thomas Harte
fd298ffbe9
Remove dead TODO.
2023-12-06 13:15:36 -05:00
Thomas Harte
987a5dbfbf
Honour monochrome flag.
2023-12-06 13:15:17 -05:00
Thomas Harte
0bb74f405f
Ensure lines are in-phase with the NTSC colour subcarrier.
2023-12-06 13:12:58 -05:00
Thomas Harte
1aa168054e
Add a phoney colour burst.
2023-12-06 13:10:28 -05:00
Thomas Harte
6d7c6de32f
Fix flush_pixels for 640px mode.
2023-12-06 11:50:16 -05:00
Thomas Harte
d3021e8c90
Attempt _something_ for 640px mode.
2023-12-06 11:42:35 -05:00
Thomas Harte
6adaf89934
Make first attempt at palette support.
2023-12-06 11:19:04 -05:00
Thomas Harte
bf49f745bf
Attempt to distinguish clocks.
2023-12-06 10:41:20 -05:00
Thomas Harte
c5aa3fc75c
Start mangling towards pixel output.
2023-12-06 10:30:30 -05:00
Thomas Harte
f455f07ba2
Support half-clocked mode.
2023-12-06 09:59:14 -05:00
Thomas Harte
561e50a24d
Implement most of CGA text mode.
2023-12-06 09:42:22 -05:00
Thomas Harte
23bdf0c2a2
Add CGA font references.
2023-12-06 09:34:04 -05:00
Thomas Harte
24eaf95e9d
Limit to eight pixels per fetch, to produce stable video.
2023-12-06 09:13:47 -05:00
Thomas Harte
e43f960934
Produce incorrect output from proper clock; capture mode.
2023-12-05 23:01:08 -05:00
Thomas Harte
fdd599e71a
Unify CRTC routing.
2023-12-05 23:00:43 -05:00
Thomas Harte
84ee683ad3
Remove redundant, false comment.
2023-12-05 23:00:21 -05:00
Thomas Harte
b2b05b590f
Clone the MDA class to CGA.
2023-12-05 22:37:33 -05:00
Thomas Harte
c5ec9ae171
Adjust MDA clock; it's slightly slower than my guess.
2023-12-05 22:31:37 -05:00
Thomas Harte
5576588c2d
Fix drive enables, go back to FF for non-existent ports.
2023-12-05 22:02:41 -05:00
Thomas Harte
fd8afb6668
Devolve memory location and font ROM decision.
2023-12-05 16:46:39 -05:00
Thomas Harte
bdf9c4765b
Loosen the assumption of MDA.
2023-12-05 16:38:09 -05:00
Thomas Harte
6659a1dec5
Exit on EOP.
2023-12-05 15:37:25 -05:00
Thomas Harte
23c60ae9bc
Supply video adaptor type.
2023-12-05 15:19:58 -05:00
Thomas Harte
4265455c31
Unify DMA interface.
2023-12-05 14:52:14 -05:00
Thomas Harte
0bcb17985b
Eliminate further warnings.
2023-12-05 14:44:20 -05:00
Thomas Harte
9601c69e12
Implement blinking text.
2023-12-04 22:02:38 -05:00
Thomas Harte
9f65587a1d
Correct scan status scaling; rearrange FDC marginally.
2023-12-04 21:46:03 -05:00
Thomas Harte
b0d1dedb65
Support MDA control: display enable.
2023-12-04 16:34:46 -05:00
Thomas Harte
bf8a4b7efe
Ensure sector cache is cleared upon disk change.
2023-12-04 12:28:29 -05:00
Thomas Harte
edef0732ac
Avoid potential infinite read loops.
2023-12-04 12:19:21 -05:00
Thomas Harte
0d7646d42a
Add a cursor-type template parameter.
2023-12-04 09:45:32 -05:00
Thomas Harte
37c46d579d
Add missing array imports.
2023-12-03 18:06:09 -05:00
Thomas Harte
4957ae7de1
Support cursor at point of output.
2023-12-02 22:44:26 -05:00
Thomas Harte
e77f4457c2
Map various missing keys.
2023-12-02 22:40:05 -05:00
Thomas Harte
c6b989d85b
Add an input queue, to avoid key drops.
2023-12-02 22:29:49 -05:00
Thomas Harte
92913b7455
Fix mapping of Z.
2023-12-02 18:46:22 -05:00
Thomas Harte
208846a166
Attempt proper EOP semantics; multisector reads.
2023-12-02 18:38:26 -05:00
Thomas Harte
c31ee968df
TC: start tending towards meaning.
2023-12-02 15:24:47 -05:00
Thomas Harte
ad9e0b664a
Merge pull request #1231 from TomHarte/DiskClassification
...
Improve format support; log more.
2023-12-02 15:11:24 -05:00
Thomas Harte
1b7e109047
Remove nonsense comment.
2023-12-02 13:25:08 -05:00
Thomas Harte
6c10611150
Avoid potential out-of-bounds read.
2023-12-02 13:23:48 -05:00
Thomas Harte
aa15fd1fff
Comment more.
2023-12-02 00:00:44 -05:00
Thomas Harte
691d1cce9e
Simplify and fix track caching.
2023-12-01 23:35:11 -05:00
Thomas Harte
7072a1661c
Flag floppy as present.
2023-12-01 22:44:21 -05:00
Thomas Harte
bc89cb7d06
Hack attack: ignore TC.
2023-12-01 17:30:32 -05:00
Thomas Harte
33a0c40c02
Support HLT.
2023-12-01 13:15:01 -05:00
Thomas Harte
365b62b4a7
Add TODO.
2023-12-01 09:50:11 -05:00
Thomas Harte
4d1e976b55
Flag drive as interrupting.
2023-12-01 09:49:50 -05:00
Thomas Harte
4429448815
Make some effort at terminating appropriate if no sector.
2023-12-01 09:47:52 -05:00
Thomas Harte
88e67d9ad6
Return some status after reading. Seemingly wrong.
2023-12-01 09:37:30 -05:00
Thomas Harte
d101483714
Hack in enough that disk contents end up in RAM.
2023-12-01 09:34:31 -05:00
Thomas Harte
5feac8ef14
Avoid duplicate symbol.
2023-12-01 07:36:12 -05:00
Thomas Harte
a96cb1ebd6
Decommit debugging hook.
2023-12-01 06:46:00 -05:00
Thomas Harte
2da2240d34
Remove errant break.
2023-12-01 06:45:29 -05:00
Thomas Harte
ef37b09a78
Seed all transfers as complete.
2023-11-30 22:47:38 -05:00
Thomas Harte
9fc0d411fd
Further flesh out DMA, breaking POST.
2023-11-30 22:45:40 -05:00
Thomas Harte
0dc44e8efd
Adjust audio formulation.
...
Probably still not right, but less wrong with the current input.
2023-11-30 14:37:13 -05:00
Thomas Harte
c076636df1
Fix typo.
2023-11-30 14:26:26 -05:00
Thomas Harte
c397da3e5a
Add TODOs.
2023-11-30 12:52:08 -05:00
Thomas Harte
5f6bbec741
Capture DMA high bytes, add actor for accesses.
2023-11-30 12:47:50 -05:00
Thomas Harte
7f0bb716f7
Grab sector contents, ready for more FDC work.
2023-11-29 15:55:37 -05:00
Thomas Harte
b7d3633b38
Log slightly more.
2023-11-29 15:30:47 -05:00
Thomas Harte
05504c8389
Accept and keep hold of disk images.
2023-11-29 15:20:14 -05:00
Thomas Harte
8d01829fa7
Adopt PC-style naming, limit to one drive.
2023-11-29 11:35:21 -05:00
Thomas Harte
be842ee2f1
Add drive indicator lights.
2023-11-29 11:31:37 -05:00
Thomas Harte
e034daa6c8
Capture motor state.
2023-11-29 09:52:16 -05:00
Thomas Harte
ce4bcf9064
Improve comment.
2023-11-29 09:50:08 -05:00
Thomas Harte
a992ae37b1
Mildly rearrange, to match enum order.
2023-11-29 09:49:15 -05:00
Thomas Harte
fbbe3ab7f1
Include seek ended flag.
2023-11-29 09:45:45 -05:00
Thomas Harte
6e2e67fd46
Sculpt out enough to get to a read data command.
2023-11-29 09:42:43 -05:00
Thomas Harte
3827a084ad
Code to GlaBIOS expectations.
2023-11-28 23:18:22 -05:00
Thomas Harte
301442a0b1
Fix meaning of flag, use correctly.
2023-11-28 22:34:34 -05:00
Thomas Harte
dd4bcf68bf
Load up on debugging logs.
2023-11-28 15:09:57 -05:00
Thomas Harte
b860fba0a3
Make an attempt at providing varied sense interrupt statuses.
2023-11-28 14:12:39 -05:00
Thomas Harte
c19c356c10
Add disabled longer serialisation.
2023-11-27 23:23:00 -05:00
Thomas Harte
8fec9bef11
Attempt IRQ logic.
2023-11-27 23:16:24 -05:00
Thomas Harte
bffe3ffa25
Add an 8272 results phase.
2023-11-27 23:05:37 -05:00
Thomas Harte
993366ac5a
Merge branch 'master' into PCFDC
2023-11-27 22:16:30 -05:00
Thomas Harte
87eec47b79
Mildly reduce cost of 8-byte ROM overlay.
2023-11-27 15:48:30 -05:00
Thomas Harte
032eeb4757
Eliminate runtime switch.
2023-11-27 14:57:41 -05:00
Thomas Harte
5c7f94d2ef
Introduce the possibility of operation type as a template parameter.
...
It's already proven possible to provide this for instruction fetch, so I think it'll immediately be a win. But more importantly it opens a path forwards for further improvement.
2023-11-27 11:48:34 -05:00
Thomas Harte
291723e85e
Insert notes to self, trying to tie down FloppyController interface.
2023-11-27 10:27:36 -05:00
Thomas Harte
a6a464c240
Add printed TODO.
2023-11-25 21:40:13 -05:00
Thomas Harte
9bd75464b5
Proceed to receiving a sense interrupt status.
2023-11-25 18:15:37 -05:00
Thomas Harte
0bb048e24b
Start formalising/extracting 8272 status.
2023-11-25 18:10:49 -05:00
Thomas Harte
8c70317d31
Introduce interrupt.
2023-11-24 23:06:52 -05:00
Thomas Harte
dd135bf3fe
Start experimenting with a possible end-of-reset interrupt?
2023-11-24 22:41:33 -05:00
Thomas Harte
2efb5236f7
Add an agent for floppy control.
2023-11-24 22:19:39 -05:00
Thomas Harte
d5c30e3175
Add enough keyboard support to be able to bypass the initial FDC BIOS failure report.
2023-11-24 13:38:06 -05:00
Thomas Harte
89423f28ef
Limit extraneous printing.
2023-11-23 22:47:31 -05:00
Thomas Harte
019d987623
Clear buffer on read.
2023-11-23 22:16:08 -05:00
Thomas Harte
7e8020df59
Avoid a spurious initial interrupt.
2023-11-23 22:15:20 -05:00
Thomas Harte
44d602e0f6
Seriously attempt a keyboard controller.
2023-11-23 22:10:51 -05:00
Thomas Harte
0674da0325
Flip IRQ priority.
2023-11-23 15:41:24 -05:00
Thomas Harte
113fc9f757
Add further TODO.
2023-11-23 15:29:43 -05:00
Thomas Harte
2c31452629
Add TODO, as exposition.
2023-11-23 15:19:31 -05:00
Thomas Harte
505df78108
Add column duplication, switch to green.
2023-11-23 15:18:28 -05:00
Thomas Harte
d92d0e87ac
Honour MDA attributes.
2023-11-23 14:51:32 -05:00
Thomas Harte
df9e9c2c4d
Start accumulating notes.
2023-11-22 15:21:45 -05:00
Thomas Harte
e0f72f2048
Tidy up.
2023-11-22 14:18:58 -05:00
Thomas Harte
a293a3a816
Document the future.
2023-11-22 14:14:53 -05:00
Thomas Harte
b22b489380
Mask into 4kb; I don't know whether hardware scrolling is in use.
2023-11-22 14:12:57 -05:00
Thomas Harte
231de8440e
Add text display.
2023-11-22 14:11:22 -05:00
Thomas Harte
381537fde9
Get as far as MDA being able to fetch.
2023-11-22 13:52:28 -05:00
Thomas Harte
f249e4ada6
Maintain an actual pixel buffer.
2023-11-22 13:40:50 -05:00
Thomas Harte
12179e486f
Create a solid white rectangle.
2023-11-22 13:18:39 -05:00
Thomas Harte
80b2ccd418
Attempt to wire in a CRTC.
2023-11-22 12:53:09 -05:00
Thomas Harte
1828a10885
Use less branchy inner loop.
2023-11-21 22:42:53 -05:00
Thomas Harte
bcd4a2216a
Improve clocking.
2023-11-21 22:36:11 -05:00
Thomas Harte
3da3401125
Attempt full audio output.
2023-11-21 22:28:33 -05:00
Thomas Harte
972d1d1ddd
Add audio pipeline.
2023-11-21 22:11:32 -05:00
Thomas Harte
6329a1208a
Adopt PIT-centric timing.
2023-11-21 22:02:24 -05:00
Thomas Harte
375a9f9ff5
Pull out the PIC, DMA.
2023-11-21 15:50:38 -05:00
Thomas Harte
a1e118a1ff
Do some interrupt work.
2023-11-21 15:46:31 -05:00
Thomas Harte
83ca9b3af5
Hack in some MDA text logging. Boot seems to complete?
2023-11-21 11:37:36 -05:00
Thomas Harte
acdf32e820
Handle low/high switches.
2023-11-21 11:25:53 -05:00
Thomas Harte
931e6e7a56
Add, disable, logging detritus.
2023-11-21 11:19:47 -05:00
Thomas Harte
058080f6de
Prove to my caveman self that no text is being written.
2023-11-20 23:11:27 -05:00
Thomas Harte
c4e9f75709
Edge towards but don't quite reach interrupt.
2023-11-20 22:52:20 -05:00
Thomas Harte
695282b838
PIT output now reaches the PIC.
2023-11-20 22:36:05 -05:00
Thomas Harte
f0e2ef5e28
Attempt to implement square-wave mode.
2023-11-20 22:19:18 -05:00
Thomas Harte
ee6012f6e9
Evict the PIT.
2023-11-20 19:00:16 -05:00
Thomas Harte
d3e90ce006
Capture some basics.
...
BIOS now seems to get as far as expecting channel 0 to trigger an interrupt, which never comes.
2023-11-20 15:36:52 -05:00
Thomas Harte
18ddc2c83a
Route traffic.
2023-11-20 15:11:22 -05:00
Thomas Harte
abf0eead7a
Add a functionless PIC.
2023-11-20 13:53:44 -05:00
Thomas Harte
a689f2b63e
Relocate comment.
2023-11-20 12:22:30 -05:00
Thomas Harte
a3066fc040
Advance to the missing PIC.
2023-11-20 12:21:37 -05:00
Thomas Harte
7eed254de9
Bring an 8255 into the mix.
2023-11-20 12:13:42 -05:00
Thomas Harte
55f466f2fa
Add enough of the DMA subsystem to trip over in PPI world.
2023-11-19 22:55:29 -05:00
Thomas Harte
119c83eb18
Fix field decoding.
2023-11-19 21:51:27 -05:00
Thomas Harte
4e077701c9
Exit without further modification upon latch.
2023-11-19 16:37:47 -05:00
Thomas Harte
a8f1c72f5c
Take a caveman run at debugging.
2023-11-19 16:05:44 -05:00
Thomas Harte
05e93f0eb3
Implementing counting for a couple of PIT modes.
2023-11-19 15:52:32 -05:00
Thomas Harte
af885ccf08
Decode PIT mode writes.
2023-11-19 15:01:21 -05:00
Thomas Harte
2b69081fff
Start sketching the PIT.
2023-11-19 07:15:30 -05:00
Thomas Harte
a91449555f
Add link for future self.
2023-11-17 17:38:17 -05:00
Thomas Harte
afc0ca3f1b
Add XT roadmap.
2023-11-17 17:35:11 -05:00
Thomas Harte
f0ac62566c
Add an 80286 BIOS, for later.
2023-11-17 17:15:57 -05:00
Thomas Harte
d202cfc2ca
Add TODO.
2023-11-17 17:09:20 -05:00
Thomas Harte
ec2d878e3f
End run around the template.
...
I have yet to get any insight whatsoever on the reason for GCC's failure here and won't have access to a suitable test
machine for a while so all I have for testing is the arduous CI cycle.
2023-11-17 17:02:46 -05:00