I am now considering using Warren Toomey's Mack architecture, shown in this forum post. It is a simpler 16-bit half-address design.
Advantages of switching:
- A 16-bit architecture will help with the implementation of various compilers and coding in general.
- Implementing the computer will be much simpler.
- The 4 general registers, each of which can also be used as an address, will be much more flexible.
- It has an essentially 1-cycle design, making it that much more simpler to build, profile, and time.
- With an advanced memory controller, certain aspects of memory management become much simpler.
- It can only load the first general register with an immediate value.
- There is no indexed addressing.
- It has no native stack, though one of the general registers can be used.
- Working around various "features" of the design (no interrupts, no reading or writing program memory) will require a much more complex memory controller.
- It will become much more repetitive to build because of the 16 bits.
Those are the basic advantages/disadvantages I've seen.
I've also been coding a few basic Forth primitives in Mack, and it seems much simpler and shorter than in my 6502-esque ISA, mainly because of the extra registers and native 16-bit. Undoubtedly, something like Small-C will become much easier to code too.
Anyways, I'll think on it a few more days.