Вот, прямо из печки
Код:
;OUTPUT
; <A> - CPU type: 0-i8080, 1-KP580BM1, 2-Zilog z80, 3-i8085
; <HL>- 0-terminated string with corresponding CPU type
;REMARKS: <BC> and <FLAGS> are not saved
CPUTXT: lxi h,_z80
lxi b,0208h
mov a,b
inr b
rpo ; 2 is returned when z80
push b
pop psw
push psw
pop b
xra a
ora c
lxi h,_i8085
mov a,b
rz
lxi h,_580VM1
mov a,c
sui 9h
rp ; 1 is returned when KP580BM1
lxi h,_i8080
xra a
ret
_i8080: DB "i8080",0
_580VM1: DB "KP580BM1",0
_z80: DB "z80",0
_i8085: DB "i8085",0
---------- Post added at 06:30 ---------- Previous post was at 06:28 ----------

Сообщение от
ivagor
Например так? :
А лучше (на 2 байта короче) так:
<A> - CPU type: 0-i8080, 1-KP580BM1, 2-1821BM85, 3-Zilog z80
Код:
cpudetect: lxi d, msg_z80
xra a
dcr a
mvi a, 3
rpo
lxi d, msg_8080
lxi h, первые две буквы msg_8080
xra a
shlx
inr a
mov d, h
mov e, l
dsub d
lxi d, msg_vm1
rz
lxi d, msg_8085
inr a
ret
Вот этот! Это-запредел. Мой уже смотрится уродливо :-)