1
0
mirror of https://github.com/TomHarte/CLK.git synced 2024-12-01 11:49:58 +00:00
Commit Graph

138 Commits

Author SHA1 Message Date
Thomas Harte
a3d37640aa Switch include guards to #pragma once. 2024-01-16 23:34:46 -05:00
Thomas Harte
3e328bed61 Be overt about jump size, albeit without internal rigour. 2023-12-24 14:11:41 -05:00
Thomas Harte
f50c45cc1a Treat 'invalid' as a silent failure. 2023-12-01 15:35:51 -05:00
Thomas Harte
233ec7b818 Soften some warnings. 2023-11-16 10:57:17 -05:00
Thomas Harte
f83d2a8740 Take a swing at ENTER. 2023-11-14 16:23:24 -05:00
Thomas Harte
aafa7de536 Implement LEAVE, almost. 2023-11-14 11:39:36 -05:00
Thomas Harte
ac826f90c3 Formalise a separate manager of segments. 2023-11-14 10:56:00 -05:00
Thomas Harte
6c405680f2 Implement PUSHA, POPA. 2023-11-14 10:42:06 -05:00
Thomas Harte
1552500b10 Implement BOUND. 2023-11-13 22:33:46 -05:00
Thomas Harte
60cec9fc67 Expand commentary. 2023-11-13 11:45:17 -05:00
Thomas Harte
3a782faaf3 Ensure shoutouts upon LDS, LES and any far jump/call/int. 2023-11-10 22:58:59 -05:00
Thomas Harte
e61dc0466f Add callout for tracking segment register changes. 2023-11-10 22:22:32 -05:00
Thomas Harte
79b126e6bb Add route for tracking segment register changes. 2023-11-10 22:11:52 -05:00
Thomas Harte
800c76a4fe Capture and respond to IDIV_REP. 2023-11-09 11:55:04 -05:00
Thomas Harte
5f1ea6c04c Unify AAA and AAS. 2023-11-08 22:30:39 -05:00
Thomas Harte
8d2a2bcf4a Unify DAA and DAS. 2023-11-08 22:26:48 -05:00
Thomas Harte
d7bb1a9ee1 Tidy up and comment a little further. 2023-11-08 11:23:21 -05:00
Thomas Harte
9566a8de67 Split up the ungainly PerformImplementation.hpp. 2023-11-08 10:52:36 -05:00
Thomas Harte
91b7d55871 Get strict about writeables. 2023-11-07 10:13:18 -05:00
Thomas Harte
e56e49a318 Fix SUB/SBB writes. 2023-11-07 10:09:04 -05:00
Thomas Harte
0262875088 Claw back to building. 2023-11-07 09:58:42 -05:00
Thomas Harte
2bed2c2c5c Further simplify syntax. 2023-11-07 09:14:42 -05:00
Thomas Harte
2af774601f Temporarily disentangle Memory and access internals; start to be overt in PerformImplementation. 2023-11-06 16:04:31 -05:00
Thomas Harte
009915f4de Start promotion of ReturnType. 2023-11-05 21:42:22 -05:00
Thomas Harte
f96c33102a Add documentation. 2023-11-04 22:22:50 -04:00
Thomas Harte
5739862dbb Add specific entryway for preauthorised writes. 2023-11-03 15:36:30 -04:00
Thomas Harte
ebdf10525c Fix parameter case. 2023-11-02 17:00:22 -04:00
Thomas Harte
83850d7596 Commute: Status -> Flags as per usual x86 naming. 2023-11-02 16:55:38 -04:00
Thomas Harte
770803b073 Be more careful as to authorisation. 2023-11-02 15:37:59 -04:00
Thomas Harte
e4fdf09149 Fix PUSH SP, far call. Further simplify FlowController. 2023-11-01 23:39:52 -04:00
Thomas Harte
acb55aa4e2 Subsume repetition of arguments into a single context.
Albeit that it (temporarily?) loses some context used during test validation.
2023-11-01 17:03:23 -04:00
Thomas Harte
bc095bb9ce Slim down the flow controller. 2023-11-01 14:49:30 -04:00
Thomas Harte
097b328075 Split the preauthorised tracks. 2023-11-01 14:31:42 -04:00
Thomas Harte
ef83ac855a Fix spelling of Preauthorised, think further on return types. 2023-11-01 14:11:10 -04:00
Thomas Harte
430c60111e CMP doesn't write. 2023-10-31 22:42:39 -04:00
Thomas Harte
2432396eaa Fix SETMOC. 2023-10-31 22:04:26 -04:00
Thomas Harte
da2aea94e3 Fix CMPS. 2023-10-31 21:58:32 -04:00
Thomas Harte
9538491ee9 Fix pushes and pops. 2023-10-31 21:55:30 -04:00
Thomas Harte
1d479ec2d7 Ensure that reads can only read, accept that source is sometimes written to. E.g. XCHG. 2023-10-31 15:06:19 -04:00
Thomas Harte
1cd1bbd26c Make a first pass of access types. 2023-10-29 16:19:10 -04:00
Thomas Harte
7a886f938a Propagate access types, even if incorrect. 2023-10-29 14:33:39 -04:00
Thomas Harte
f9d1a4dd8f Add Repetition::Rep to unify repeat logic. 2023-10-27 16:27:24 -04:00
Thomas Harte
66cee41b99 Fix port. 2023-10-27 14:04:23 -04:00
Thomas Harte
2d70b44303 Boil down segment ahead of time. 2023-10-27 12:54:42 -04:00
Thomas Harte
11b032fb06 Eliminate length extension. 2023-10-26 23:19:31 -04:00
Thomas Harte
8e35a56ff7 Include repetition in operation; simplify Instruction constructor. 2023-10-26 23:08:07 -04:00
Thomas Harte
29a921f764 Remove TODO, add exposition. 2023-10-25 16:15:08 -04:00
Thomas Harte
a2826cdee5 Propagate address size. 2023-10-25 16:00:01 -04:00
Thomas Harte
3b62638b30 Remove dead DataPointerResolver and extra-conditional version of source(). 2023-10-25 14:43:58 -04:00
Thomas Harte
82c66e7433 Fix far jump with immediate operand.
1655 failures remaining.
2023-10-23 10:07:19 -04:00