Adrian Conlon
|
1f5dc54c40
|
Copy constructor and equality operations added.
|
2021-12-27 22:07:30 +00:00 |
|
Adrian Conlon
|
945fcefb36
|
Start adding comparison operations to EightBit classes
|
2021-12-27 14:24:38 +00:00 |
|
Adrian Conlon
|
6bf28f1480
|
Correct some virtual and constexpr expressions.
Signed-off-by: Adrian Conlon <adrian.conlon@gmail.com>
|
2021-08-23 09:44:48 +01: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
|
b4f8c81a94
|
Use nodiscard, where appropriate and try not to inline virtual methods.
Signed-off-by: Adrian Conlon <adrian.conlon@gmail.com>
|
2021-01-02 11:49:34 +00:00 |
|
Adrian Conlon
|
efed7dae23
|
LR35902 Simplify timing mechanism (corrects some timing issues as well!)
Signed-off-by: Adrian Conlon <adrian.conlon@gmail.com>
|
2020-11-12 18:21:51 +00:00 |
|
Adrian Conlon
|
f7da03d46b
|
Bring the LR35902 code to be more like the Z80
Signed-off-by: Adrian Conlon <adrian.conlon@gmail.com>
|
2020-11-09 11:48:59 +00:00 |
|
Adrian Conlon
|
de800fe9f1
|
Modify virtual default destructor specification to better match core guidelines.
Signed-off-by: Adrian Conlon <adrian.conlon@gmail.com>
|
2020-05-03 20:29:18 +01:00 |
|
Adrian Conlon
|
5eedbe1225
|
Make better use of modern c++
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2020-05-02 11:36:43 +01:00 |
|
Adrian Conlon
|
44c6a8c3d1
|
Correct some EightBit project analysis warnings.
Signed-off-by: Adrian Conlon <adrian.conlon@gmail.com>
|
2020-04-06 23:11:21 +01:00 |
|
Adrian Conlon
|
b89d2cf15c
|
Start correcting Z80 T-cycle counts (DJNZ, JR cc, ADD HL,rp, INC/DEC rp, INC/DEC (HL))
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2020-02-16 09:18:34 +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
|
cb502bd65d
|
Halt is of course an "output" pin. (So that the halt instruction can work)
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2019-11-19 23:05:27 +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
|
4f47f3fc4d
|
Simplifying the Z80 halt implementation looks better.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2019-08-29 08:51:15 +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
|
92d23d82d6
|
Start big refactor of device/CPU pin usage (to allow pin events throughout).
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2019-01-14 02:10:17 +00:00 |
|
Adrian Conlon
|
9960ad6012
|
Tidy return parameter usage a little within the EightBit library.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-11-29 00:09:40 +00:00 |
|
Adrian Conlon
|
deb9a6d43c
|
Correct more analysis problems. No functional changes.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-11-28 21:27:14 +00:00 |
|
Adrian Conlon
|
a673a64c3f
|
Lots of various changes suggested by the code analysis tools.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-11-27 22:36:54 +00:00 |
|
Adrian Conlon
|
e156b1ff1a
|
Correct some more compilation warnings (across the whole EightBit project).
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-11-25 19:02:11 +00:00 |
|
Adrian Conlon
|
887b89308a
|
Ensure virtual methods are no longer defined inline.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-11-25 10:43:51 +00:00 |
|
Adrian Conlon
|
5530522f11
|
Correct a couple of small issues
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-11-16 23:49:52 +00:00 |
|
Adrian Conlon
|
62f3cd717b
|
First set of C++17/14 changes to the core library
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-10-27 17:30:23 +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
|
cc64e114a9
|
Start refactoring the processor classes to allow big/little endian processors to be specified.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-08-17 21:53:49 +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
|
b640da1910
|
Add some noexcept specifications. Just to experiment.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-08-07 23:06:15 +01:00 |
|
Adrian Conlon
|
cac871cf2b
|
Remove duplicated code (from const definitions) the performance benefit isn't worth the amount of duplicated code.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-06-24 20:58:20 +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
|
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
|
9de0f597f6
|
Remove some "tricksy" code from the Z80 emulator chain.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-04-14 09:39:06 +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
|
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
|
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
|
108f66632e
|
Performance: watch out for unnecessary virtualised methods.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2018-01-06 17:13:02 +00:00 |
|
Adrian Conlon
|
637c0c68fa
|
Correct a couple of merge issues.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2017-12-12 23:12:45 +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
|
d70f6b375b
|
Ensure each header file has a newline on its own at the end of each file.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2017-11-30 23:19:17 +00:00 |
|
Adrian Conlon
|
12385dcc6f
|
More clang warnings corrected.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2017-11-30 23:15:40 +00:00 |
|
Adrian Conlon
|
a0f7d584b6
|
Correct a few warnings reported by "clang"
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2017-11-30 14:37:18 +00:00 |
|
Adrian Conlon
|
c513f0cab1
|
GSL was too problematic when used with GCC. Removed.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2017-11-20 19:17:49 +00:00 |
|
Adrian Conlon
|
67c27d4a3e
|
GSL + CPP core guidelines changes.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2017-11-18 14:29:30 +00:00 |
|
Adrian Conlon
|
0b6ef3d4dd
|
VS2017 and CPP core guidelines updates
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2017-11-11 15:13:26 +00:00 |
|
Adrian Conlon
|
d010e3ca2f
|
Start incorporating CPP core guidelines (as an experiment!)
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
|
2017-11-10 22:41:50 +00:00 |
|