1
0
mirror of https://github.com/TomHarte/CLK.git synced 2024-11-29 12:50:28 +00:00
Commit Graph

3106 Commits

Author SHA1 Message Date
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