NEC V30 specific features
The CPU inside inside AFX series is a 16Bit NEC V30 @8MHz beeing fully compatible with Intel 80186. However, there are some additional instructions for bit and bit field manipulation and an MCS80/8085/Z80 compatibility mode, furthermore another mnemonic similar to that of Z80 has been defined. Though NEC V30 (released in 1984) runs at the same speed, it's around 10 to 30% faster than 8086 (depending on application) due to some internal improvements. Today there are even some other improvements concerning e.g. very low power consumption.
This CPU isn't a very well-known one rarely having had some market share, as shortly after it 80286 has been released. 80186 in fact is a 80286 providing some instructions that 8086 didn't, but without Protected Mode extensions (--> address space remains 1MB).
Instructions introduced with 80186 (V30 compatible):
Instructions introduced with 80286 (Protected Mode related, not V30 compatible):
- enter, leave
- insb, insw, outsb, outsw
- popa, pusha
- sal/sar/shl/shr r/m8/m16,imm8
- rcl/rcr/rol/ror r/m8/m16,imm8
When generating 80186 or compatible code for Real Address Mode, just select 80286 as compiler parameter for 80186 optimization as Protected Mode related instructions aren't used then anyways.
Also called "Emulation Mode". In this mode the CPU is capable to execute any code written for Intel 8080 (released in 1974), also known as "MCS80". It was the first successfull CPU at all (used for Altair 8800 for example) and has been the predecessor of all modern 8Bit CPUs such as Intel 8085 and Zylog Z80 (the most successfull 8Bit processor ever and still in use today).
- lgdt, lidt, lldt
- sgdt, sidt, sldt
- lmsw, smsw
- ltr, str
- lar, lsl
- verr, verw
Note that 8085 and Z80 CPUs are fully 8080 compatible, but not vice versa (especially Z80, that has an widely advanced instruction set). So it's doubtfull whether this emulation mode is very profitable due to the 8080's limitations compared to Z80, and note: there's rarely 8080 software out there, but still lots for Z80. However, AFX series surely doesn't use this mode, except the Casio CFX's CPU was a 8080 (Casio could run parts of the CFX's OS on AFX then, but I don't believe it).
In order to switch to that mode and back, there are three instructions: brkem (call an 8080 interrupt), retem (return from 8080 interrupt) and calln (call 80186 interrupt). Refer to NEC V30 Manual for details.
Bit and bit field instructions
Copyright (C) 2005 by Marco Kaufmann