The greatest advantage that the Gigatron has over any other 8-bit microprocessor is that all of it's native assembler instructions execute in a single clock cycle.
I am currently exploring the Gigatron assembly language, and since I have had experience in Z80 machine code, I thought I would configure the Gigatron zero page RAM to appear like the Z80 registers A, B, C, D, E, F, H, L and register pairs BC, DE, HL and SP.
The Z80 takes 4 clock cycles to perform a register to register transfer. The Gigatron can do this in 2 cycles.
Similarly a 16-bit memory to memory transfer takes only 4 cycles.
So far, so good. What else does the Gigatron do well? Conditional branching and jumping also complete in 1 clock cycle. The Z80 consumes 7 to 12 cycles depending on whether the condition has been met.
The one thing the Gigatron lacks is a flags register and "proper" zero and carry flags. This really does slow down multibyte arithmetic, using several clock cycles to determine the flag status.
What if we replace this with a flags register and a proper zero detect? Well we can cut down a 16-bit add from 24 cycles to 7 cycles just with a couple of extra ICs.
I'm working on a custom assembler that can use native Gigatron mnemonics, as well as macros consisting of several Gigatron instructions chained together.
I'm not really bothered about colour graphics and sound - so I will throw those away. My main aim is to get the fastest/ most effiecient Gigatron possible, so that I can compare it against Z80, 6502 etc.
High Noon - Gigatron versus Z80 shoot out.
Forum rules
Be nice. No drama.
Be nice. No drama.