Commit Graph

561 Commits

Author SHA1 Message Date
Adrian Conlon
d4c08b2a25 Use portability macros in the 6502 disassembler.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2018-01-01 01:16:22 +00:00
Adrian Conlon
eb40c0865e Started added undocumented instructions: first the NOPS (single, double and triple byte variants, including cycle variations).
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-31 14:41:00 +00:00
Adrian Conlon
82fe35891d Linux compatibility changes
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-30 15:22:27 +00:00
Adrian Conlon
2683999e2c Mild refactoring, no functional change...
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-30 14:33:48 +00:00
Adrian Conlon
8e4030a5aa Add some performance hints to conditionals.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-29 14:56:26 +00:00
Adrian Conlon
412a44fafd Correct some page crossing conditions affecting 6502 cycle counts.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-29 14:49:53 +00:00
Adrian Conlon
0604d5cf22 Actually, all 6502 getWord usage has an invariant high page indicator.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-29 11:50:24 +00:00
Adrian Conlon
7432e602f8 Correct a 6502 bug in absolute indirect addressing mode (unchanging page on address resolution).
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-28 16:15:22 +00:00
Adrian Conlon
1946b7ef39 Correct a couple of flag anomalies in the 6502 processor highlighted by NESTEST
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-28 15:53:30 +00:00
Adrian Conlon
dcf99bf65d Zero page indirection should completely ignore the high byte of the address line.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-28 15:16:21 +00:00
Adrian Conlon
bfa1c07ea4 Change a couple of small formatting quirks in the disassembler to better match "nestest".
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-28 14:18:17 +00:00
Adrian Conlon
d4782a66db Some small changes for NES support: hopefully not broken anything!
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-26 22:46:16 +00:00
Adrian Conlon
df1f47fb36 Simplify Linux build configurations.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-25 23:45:55 +00:00
Adrian Conlon
c05a236f1d Merge branch 'master' of https://github.com/MoleskiCoder/EightBit 2017-12-25 23:35:08 +00:00
Adrian Conlon
81ed53ce11 First stab at a Ricoh 2A03: A 6502 minus decimal mode support.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-25 23:34:56 +00:00
Adrian Conlon
870d7528ce Include full symbols in all linux builds.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-23 23:25:37 +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
c8dd6e7267 Merge branch 'master' of https://github.com/MoleskiCoder/EightBit
# Conflicts:
#	inc/EightBitCompilerDefinitions.h
2017-12-12 23:08:34 +00:00
Adrian Conlon
c5b7b06e59 Whoops: correct macro expansion.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-12 23:05:54 +00:00
Adrian Conlon
697bfb636d A more succinct definition of the LR35902 interrupt mechanism.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-12 22:29:37 +00:00
Adrian Conlon
a1c753d63e Couple of small tidy ups on the LR35902 implementation.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-10 21:57:32 +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
384484d228 Add i8080 builds to the top level makefile.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-05 21:56:33 +00:00
Adrian Conlon
fb305268b1 (Hopefully) Get the i8080 test suite up and running on Linux.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-05 21:53:54 +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
f1b3fc1932 Correct at least some of the problems with the Z80 interrupt rewrite
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-04 21:59:38 +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
4f5e231dc4 Merge branch 'master' of https://github.com/MoleskiCoder/EightBit 2017-12-02 23:55:44 +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
def14493cb Allow fallback for where intrinsics aren't available.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-02 19:01:07 +00:00
Adrian Conlon
55b989fe13 More likely/unlikely macro usages.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-02 14:53:35 +00:00
Adrian Conlon
facb36d25f Whoops: missed -flto
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-02 10:35:17 +00:00
Adrian Conlon
9cbf76daf2 Correct a couple of LIKELY/UNLIKELY usages.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-12-02 10:34:37 +00:00
Adrian Conlon
c2de6a2659 More clang warning corrected.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-11-30 23:21: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
4b2d84dba3 Whoops: missed clang warning.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-11-30 16:55:10 +00:00
Adrian Conlon
dc58969614 Whoops: missed Z80 test Makefile.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-11-30 15:02:58 +00:00
Adrian Conlon
033969bbe3 Add profile guided optimisation to build configuration (profile/profiled)
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-11-30 14:59:24 +00:00
Adrian Conlon
6a065dd405 Merge branch 'master' of https://github.com/MoleskiCoder/EightBit 2017-11-30 14:37:32 +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
6dbb1e1c13 LR35902 linux makefile: make consistent with Z80/shared parts.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-11-30 14:35:52 +00:00
Adrian Conlon
befcda2c0e Linux build compatibility.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-11-27 21:33:23 +00:00
Adrian Conlon
11062607e6 Start sharing parts of the linux build system.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-11-26 22:10:17 +00:00
Adrian Conlon
f50c83ad36 Whoops: missed GCC problem.
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-11-20 20:54:17 +00:00
Adrian Conlon
92919b0440 Correct a few GCC build issues. TBC
Signed-off-by: Adrian Conlon <Adrian.conlon@gmail.com>
2017-11-20 20:47:00 +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