z80.git
10 years agoZ80: ISA: Fix some of the dZ80 printing
Lucian Mogosanu [Wed, 24 Dec 2014 00:03:19 +0000 (02:03 +0200)]
Z80: ISA: Fix some of the dZ80 printing

10 years agoZXS: Decode remaining prefixed opcodes
Lucian Mogosanu [Tue, 23 Dec 2014 23:49:53 +0000 (01:49 +0200)]
ZXS: Decode remaining prefixed opcodes

10 years agoZXS: Decode a shitload of prefixed opcodes
Lucian Mogosanu [Tue, 23 Dec 2014 23:28:14 +0000 (01:28 +0200)]
ZXS: Decode a shitload of prefixed opcodes

Still a few more left, though.

10 years agoZ80: ISA: Add 8-bit IX and IY regs
Lucian Mogosanu [Tue, 23 Dec 2014 23:26:42 +0000 (01:26 +0200)]
Z80: ISA: Add 8-bit IX and IY regs

I'm not sure whether this is the best approach, but I'm choosing it for
now. I'm envisioning a massive refactoring sometime in the future, of
the *entire* decoding machine, not only this particular part. I'll
probably need to wrap all this in yet another State monad.

10 years agoZ80: ISA: Fix Show to comply with dZ80
Lucian Mogosanu [Tue, 23 Dec 2014 21:07:45 +0000 (23:07 +0200)]
Z80: ISA: Fix Show to comply with dZ80

10 years agoZXS: Make relative jumps return absolute addresses
Lucian Mogosanu [Tue, 23 Dec 2014 20:55:37 +0000 (22:55 +0200)]
ZXS: Make relative jumps return absolute addresses

For the sake of complying to the dZ80 diassembly format, but this should
also simplify some of the execution logic.

10 years agoZ80: ISA: Show A reg as implicit
Lucian Mogosanu [Tue, 23 Dec 2014 20:19:20 +0000 (22:19 +0200)]
Z80: ISA: Show A reg as implicit

Only conisdering this for 8-bit arithmetic group.

10 years agoZ80: ISA: Add custom Show instances
Lucian Mogosanu [Tue, 23 Dec 2014 20:08:22 +0000 (22:08 +0200)]
Z80: ISA: Add custom Show instances

10 years agoUpdate .gitignore
Lucian Mogosanu [Tue, 23 Dec 2014 18:03:50 +0000 (20:03 +0200)]
Update .gitignore

Ignore dist/ builds generated by cabal.

10 years agoCabalize opcodeTest
Lucian Mogosanu [Tue, 23 Dec 2014 18:03:07 +0000 (20:03 +0200)]
Cabalize opcodeTest

10 years agoAdd sketchy readme
Lucian Mogosanu [Tue, 23 Dec 2014 17:54:12 +0000 (19:54 +0200)]
Add sketchy readme

10 years agoOpcodeTest: Pretty print instructions
Lucian Mogosanu [Tue, 23 Dec 2014 17:43:02 +0000 (19:43 +0200)]
OpcodeTest: Pretty print instructions

10 years agoZXS: Decode: Don't skip decoding for dd-prefixed instrs
Lucian Mogosanu [Tue, 23 Dec 2014 17:42:17 +0000 (19:42 +0200)]
ZXS: Decode: Don't skip decoding for dd-prefixed instrs

10 years agoZXS: Machine: Add more aux funcs
Lucian Mogosanu [Tue, 23 Dec 2014 17:41:18 +0000 (19:41 +0200)]
ZXS: Machine: Add more aux funcs

getMainMemByte retrieves one byte from the main memory.

10 years agoZXS: Decode: Fix index parameter
Lucian Mogosanu [Tue, 23 Dec 2014 17:40:49 +0000 (19:40 +0200)]
ZXS: Decode: Fix index parameter

10 years agoAdd Opcode test
Lucian Mogosanu [Fri, 19 Dec 2014 14:56:14 +0000 (16:56 +0200)]
Add Opcode test

10 years agoZ80: ISA: Add Show instances for types
Lucian Mogosanu [Fri, 19 Dec 2014 14:55:44 +0000 (16:55 +0200)]
Z80: ISA: Add Show instances for types

10 years agoZXS: Machine, RAM: Add utility functions
Lucian Mogosanu [Wed, 17 Dec 2014 15:24:38 +0000 (17:24 +0200)]
ZXS: Machine, RAM: Add utility functions

10 years agoZXS: Decode: Implement DDCB/FDCB decoder
Lucian Mogosanu [Sun, 14 Dec 2014 14:36:18 +0000 (16:36 +0200)]
ZXS: Decode: Implement DDCB/FDCB decoder

10 years agoZXS: Decode: Handle CB and ED-prefixed opcodes
Lucian Mogosanu [Sun, 14 Dec 2014 00:50:31 +0000 (02:50 +0200)]
ZXS: Decode: Handle CB and ED-prefixed opcodes

10 years agoZXS: Add basic decoder module
Lucian Mogosanu [Sat, 13 Dec 2014 23:40:00 +0000 (01:40 +0200)]
ZXS: Add basic decoder module

This contains most of the functionality, it parses all the opcodes
except the prefixed ones.

10 years agoZ80: ISA: Adjust to decoding needs
Lucian Mogosanu [Sat, 13 Dec 2014 23:39:39 +0000 (01:39 +0200)]
Z80: ISA: Adjust to decoding needs

10 years agoZXS: Add fetcher
Lucian Mogosanu [Sat, 13 Dec 2014 20:45:22 +0000 (22:45 +0200)]
ZXS: Add fetcher

10 years agoZ80: Give up Decoder
Lucian Mogosanu [Sat, 13 Dec 2014 20:44:59 +0000 (22:44 +0200)]
Z80: Give up Decoder

10 years agoZ80: Rename Primitives to Microcode
Lucian Mogosanu [Sat, 13 Dec 2014 20:01:12 +0000 (22:01 +0200)]
Z80: Rename Primitives to Microcode

10 years agoZ80: Add primitives for all registers
Lucian Mogosanu [Sat, 13 Dec 2014 19:57:53 +0000 (21:57 +0200)]
Z80: Add primitives for all registers

10 years agoZ80: Add most basic primitives
Lucian Mogosanu [Sat, 13 Dec 2014 17:08:34 +0000 (19:08 +0200)]
Z80: Add most basic primitives

10 years agoZXS: RAM: Add examples
Lucian Mogosanu [Sat, 13 Dec 2014 16:56:32 +0000 (18:56 +0200)]
ZXS: RAM: Add examples

10 years agoZXS: Rename Memory to RAM
Lucian Mogosanu [Sat, 13 Dec 2014 16:50:19 +0000 (18:50 +0200)]
ZXS: Rename Memory to RAM

because "Memory" is too generic, as we will also have I/O memory for
example. This commit also drops the Show instance from ZXST, I wish I
could solve this somehow in the future.

10 years agoZXS: Add basic Memory operations
Lucian Mogosanu [Sat, 13 Dec 2014 16:39:42 +0000 (18:39 +0200)]
ZXS: Add basic Memory operations

10 years agoZXS: Add base Spectrum monad
Lucian Mogosanu [Sat, 13 Dec 2014 16:09:44 +0000 (18:09 +0200)]
ZXS: Add base Spectrum monad

10 years agoRestructure tree
Lucian Mogosanu [Sat, 13 Dec 2014 15:54:52 +0000 (17:54 +0200)]
Restructure tree

Also makes some small modification to data structures and adds a new
file, but this isn't so important at the moment.

11 years agoZ80: CPU: Add Prefixed flag
Lucian Mogosanu [Thu, 11 Dec 2014 22:20:37 +0000 (00:20 +0200)]
Z80: CPU: Add Prefixed flag

11 years agoZ80: Add decoder stub
Lucian Mogosanu [Thu, 11 Dec 2014 22:20:05 +0000 (00:20 +0200)]
Z80: Add decoder stub

11 years agoZ80: ISA: Add full abstract spec
Lucian Mogosanu [Thu, 11 Dec 2014 22:19:45 +0000 (00:19 +0200)]
Z80: ISA: Add full abstract spec

11 years agoAdd .gitignore
Lucian Mogosanu [Thu, 11 Dec 2014 22:18:44 +0000 (00:18 +0200)]
Add .gitignore

11 years agoAdd initial source files
Lucian Mogosanu [Wed, 10 Dec 2014 17:24:27 +0000 (19:24 +0200)]
Add initial source files