High Noon - Gigatron versus Z80 shoot out.

Using, learning, programming and modding the Gigatron and anything related.
Forum rules
Be nice. No drama.
Post Reply
Posts: 101
Joined: 17 May 2018, 07:17

High Noon - Gigatron versus Z80 shoot out.

Post by monsonite »

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.
Post Reply