CPCWiki forum

General Category => Amstrad CPC hardware => Topic started by: arnoldemu on 14:43, 06 January 16

Title: Z80 CPU NMOS or CMOS
Post by: arnoldemu on 14:43, 06 January 16
I believe almost all CPCs use NMOS cpus.

NMOS:

OUT (C),0
LD A,R/LD A,I -> P/V flag is cleared if interrupt is received during the execution of these commands.

CMOS:

OUT (C),0 actually does OUT (C),255
LD A,R/LD A,I -> no bug

I tested the Z80 in my GX4000 and CPCs and all are NMOS. Are there any CPCs with CMOS Z80's?

Title: Re: Z80 CPU NMOS or CMOS
Post by: gerald on 15:03, 06 January 16
Quote from: arnoldemu on 14:43, 06 January 16
I believe almost all CPCs use NMOS cpus.

NMOS:

OUT (C),0
LD A,R/LD A,I -> P/V flag is cleared if interrupt is received during the execution of these commands.

CMOS:

OUT (C),0 actually does OUT (C),255
LD A,R/LD A,I -> no bug

I tested the Z80 in my GX4000 and CPCs and all are NMOS. Are there any CPCs with CMOS Z80's?
I do not think Amstrad ever used a CMOS Z80.
Even on the later Plus/GX4000, it's a NMOS Z8400 (CMOS would be Z84C00)
Title: Re: Z80 CPU NMOS or CMOS
Post by: TotO on 17:40, 06 January 16
Using a CMOS Z80 into a CPC will cause some programs failure.
For example, STarKos will not work!
Title: Re: Z80 CPU NMOS or CMOS
Post by: TFM on 17:46, 06 January 16
Why this?
Title: Re: Z80 CPU NMOS or CMOS
Post by: arnoldemu on 18:35, 06 January 16
Quote from: TFM on 17:46, 06 January 16
Why this?
Programs which use "OUT (C),0" will not work on CMOS. It doesn't out 0, it outs 255!
Title: Re: Z80 CPU NMOS or CMOS
Post by: TFM on 18:46, 06 January 16
Quote from: arnoldemu on 18:35, 06 January 16
Programs which use "OUT (C),0" will not work on CMOS. It doesn't out 0, it outs 255!


Oh crap! I didn't know! But this can be used to test the CPU version then, right? OUT to a port which you can read again, PSG port f.e. On the other hand if nobody uses CMOS why to bother? But good to know. Thanks for your valuable insights Sir!  :) :)
Title: Re: Z80 CPU NMOS or CMOS
Post by: arnoldemu on 21:11, 06 January 16
Quote from: TFM on 18:46, 06 January 16

Oh crap! I didn't know! But this can be used to test the CPU version then, right? OUT to a port which you can read again, PSG port f.e. On the other hand if nobody uses CMOS why to bother? But good to know. Thanks for your valuable insights Sir!  :) :)
correct.
But I think nobody uses cmos.


Powered by SMFPacks Menu Editor Mod