Adrian Conlon
|
b22d7e47e5
|
Addressing mode simplifications
|
2024-03-14 14:54:52 +00:00 |
|
Adrian Conlon
|
8e0092ec9d
|
Tidy up noexcept specification
|
2022-01-17 19:10:15 +00:00 |
|
Adrian Conlon
|
945fcefb36
|
Start adding comparison operations to EightBit classes
|
2021-12-27 14:24:38 +00:00 |
|
Adrian Conlon
|
22506ea56c
|
Extensive change warning: lots of "noexcept" and "constexpr" changes. Not sure if I'll keep all of them, but interesting...
Signed-off-by: Adrian Conlon <adrian.conlon@gmail.com>
|
2021-07-18 14:28:40 +01:00 |
|
Adrian Conlon
|
2f76e901f9
|
More tidying of include files for VS2019 compatibility (plus more correct!)
Signed-off-by: Adrian Conlon <adrian.conlon@gmail.com>
|
2021-05-29 12:18:13 +01:00 |
|
Adrian Conlon
|
a37601df67
|
Correct recently introduced IO implementation issues in the 8080 core.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2020-02-13 09:17:52 +00:00 |
|
Adrian Conlon
|
c8bdabf34f
|
Reflect that the I/O for Intel style processors isn't part of the CPU, but attached to the Bus and access controlled by the CPU.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2020-02-09 11:51:58 +00:00 |
|
Adrian Conlon
|
d9466082ec
|
M-Cycle accurate Z80 modifications.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2019-12-29 01:18:54 +00:00 |
|
Adrian Conlon
|
d0467421ff
|
Improve compatibility with .net emulator code.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2019-11-09 18:58:23 +00:00 |
|
Adrian Conlon
|
254cfbe342
|
Tidied up pin management to be synchronised with the .Net code.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2019-09-06 23:55:57 +01:00 |
|
Adrian Conlon
|
f48f1d559e
|
Move all Intel derived processors over to the simpler "HALT" method.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2019-08-29 08:57:30 +01:00 |
|
Adrian Conlon
|
5ed01b61d1
|
Backport fixes from .Net EightBit library to C++
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2019-08-16 21:56:48 +01:00 |
|
Adrian Conlon
|
934a1f7025
|
Use the virtual methods, busRead and busWrite for all processor bus actions.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2019-03-02 21:58:34 +00:00 |
|
Adrian Conlon
|
f0376fa81e
|
Use macros to define our device pins.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2019-01-14 23:17:54 +00:00 |
|
Adrian Conlon
|
68030610d8
|
Move to an event driven clock tick event for all CPUs
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2019-01-09 23:24:33 +00:00 |
|
Adrian Conlon
|
a13ad5042a
|
Correct constructions of register16_t: the structure is "#ifdef"ed for different endian arrangements.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2019-01-06 11:27:43 +00:00 |
|
Adrian Conlon
|
f38d326ca7
|
Improve the flexibility of the BUS mapping/read/write architecture.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-12-29 19:17:36 +00:00 |
|
Adrian Conlon
|
b9ca27feb3
|
Refactor the Intel 8080 core for C++17/14
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-10-27 18:51:30 +01:00 |
|
Adrian Conlon
|
6d4223c368
|
Start moving towards reset being just another style of interrupt.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-08-25 01:34:30 +01:00 |
|
Adrian Conlon
|
ed76038bfa
|
More memptr adjustments
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-08-17 13:59:59 +01:00 |
|
Adrian Conlon
|
70c70af969
|
Sort out some exception and member initialisation rules.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-08-11 21:19:19 +01:00 |
|
Adrian Conlon
|
cf311a5113
|
Merge branch 'master' of https://github.com/MoleskiCoder/EightBit
|
2018-06-24 21:09:53 +01:00 |
|
Adrian Conlon
|
67487b5b6e
|
Simplify the usage of the register16_t union.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-06-16 00:55:32 +01:00 |
|
Adrian Conlon
|
89632774a7
|
Bring closer to the Z80 implementation again.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-06-11 23:02:27 +01:00 |
|
Adrian Conlon
|
3e854c7c49
|
Const some more bus/processor usage, and ensure the data bus is a member, not a reference to memory.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-06-10 00:40:56 +01:00 |
|
Adrian Conlon
|
4b4f6b1a49
|
Some *small* consistency changes. Perhaps some performance gains.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-04-11 23:53:26 +01:00 |
|
Adrian Conlon
|
d818095815
|
MEMPTR is really only a concept of Intel style processors.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-03-18 22:40:23 +00:00 |
|
Adrian Conlon
|
97a121b8d4
|
Unneeded UNREACHABLEs can cause gcc to produce problematic code. TBC
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-03-17 23:34:27 +00:00 |
|
Adrian Conlon
|
dac58b121a
|
More small tidyups in the core emulator set.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-03-12 01:22:28 +00:00 |
|
Adrian Conlon
|
45dc274167
|
Get rid of wrappers for bus access: i.e. make it clearer where the bus is being read/written.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-03-10 01:53:57 +00:00 |
|
Adrian Conlon
|
adf506a41e
|
Optimisation: Prefer return by value to return by reference. ~10% speed-up!
Just watch a video by Chandler Carruth from 2015, where he talked about C++ optimisers...
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-02-25 19:48:01 +00:00 |
|
Adrian Conlon
|
290ab7a4dc
|
More 8080 simplifications. No need to have it act like a Z80 under the hood.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-01-11 00:02:44 +00:00 |
|
Adrian Conlon
|
29edc46966
|
Simplify some MEMPTR usage in Intel processors.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-01-10 23:08:14 +00:00 |
|
Adrian Conlon
|
1edabd79f3
|
More pinout oriented method of executing instructions (especially interrupts)
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2017-12-10 21:41:48 +00:00 |
|
Adrian Conlon
|
3d88a8f6d1
|
Couple of small changes in LIKELY/UNLIKELY usage.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2017-12-05 21:40:23 +00:00 |
|
Adrian Conlon
|
6a47f710b9
|
More consistency updates between i8080 and Z80.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2017-12-04 23:41:49 +00:00 |
|
Adrian Conlon
|
1bf797490b
|
Tidy the i8080 interrupt handling to be more like the Z80 implementation
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2017-12-04 23:20:55 +00:00 |
|
Adrian Conlon
|
23f7a88480
|
Further 8080/Z80 interrupt rewrite
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2017-12-03 00:57:47 +00:00 |
|
Adrian Conlon
|
7e3957d4db
|
Rewrite i8080 interrupts to be more closely related to the hardware.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2017-12-02 23:50:59 +00:00 |
|
Adrian Conlon
|
8143f8a506
|
Try to correct "one definition rule" problems:
1) No forward declarations
2) No virtual methods defined inline.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2017-11-05 12:47:42 +00:00 |
|
Adrian Conlon
|
c292fb552e
|
A whole bunch of consistency changes. No functional changes.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2017-11-03 22:05:01 +00:00 |
|
Adrian.Conlon
|
64b7335a79
|
Attempted move to a "BUS" oriented memory architecture (TBC!)
Signed-off-by: Adrian.Conlon <adrian.conlon@arup.com>
|
2017-09-06 13:22:23 +01:00 |
|
Adrian.Conlon
|
da806bddcb
|
Tidy some more Windows/Linux compatibility issues.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
|
2017-09-03 21:30:46 +01:00 |
|
Adrian.Conlon
|
640b2be670
|
Parts of the EightBit library become linux compatible (TBC!)
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
|
2017-09-03 12:11:14 +01:00 |
|
Adrian.Conlon
|
9b43b74c28
|
Rationalise some of the reset/initialise logic across pProcessor implementations.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
|
2017-09-01 16:01:40 +01:00 |
|
Adrian.Conlon
|
e70686c5de
|
Some more rationalisation of processor execution/stepping strategies.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
|
2017-08-30 23:17:34 +01:00 |
|
Adrian.Conlon
|
329fd269ed
|
Share some more code from the 6502 processor implementation.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
|
2017-08-28 18:52:48 +01:00 |
|
Adrian.Conlon
|
016b3bca59
|
Switch to a memory read/write event driven model. All tests passing.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
|
2017-08-06 17:06:48 +01:00 |
|
Adrian.Conlon
|
8535efb30d
|
More i8080 and LR35902 consistency.
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
|
2017-07-25 21:22:15 +01:00 |
|
Adrian.Conlon
|
1b11e0750b
|
Try to make the 8080 emulator a little more like the LR35902
Signed-off-by: Adrian.Conlon <adrian.conlon@gmail.com>
|
2017-07-25 20:52:10 +01:00 |
|