А что у команд бывают разные такты? Тут насколько я знаю вся разница с z80 что inc RP и inc R занимают по 5 тактов а не 6 и 4, ну по крайней мере так было в таблице что я нашел. Может есть еще какие хитрости в отличие от z80?
кстате для тех кто не понимает мнемоники 8080 как мну
Вложение 60149
Код:8080 z80
MOV A,A 5 4 LD A,A
MOV A,B 5 4 LD A,B
MOV A,C 5 4 LD A,C
MOV A,D 5 4 LD A,D
MOV A,E 5 4 LD A,E
MOV A,H 5 4 LD A,H
MOV A,L 5 4 LD A,L
MOV A,M 7 7 LD A,(HL)
LDAX B 7 7 LD A,(BC)
LDAX D 7 7 LD A,(DE)
LDA word 13 13 LD A,(word)
MOV B,A 5 4 LD B,A
MOV B,B 5 4 LD B,B
MOV B,C 5 4 LD B,C
MOV B,D 5 4 LD B,D
MOV B,E 5 4 LD B,E
MOV B,H 5 4 LD B,H
MOV B,L 5 4 LD B,L
MOV B,M 7 7 LD B,(HL)
MOV C,A 5 4 LD C,A
MOV C,B 5 4 LD C,B
MOV C,C 5 4 LD C,C
MOV C,D 5 4 LD C,D
MOV C,E 5 4 LD C,E
MOV C,H 5 4 LD C,H
MOV C,L 5 4 LD C,L
MOV C,M 7 7 LD C,(HL)
MOV D,A 5 4 LD D,A
MOV D,B 5 4 LD D,B
MOV D,C 5 4 LD D,C
MOV D,D 5 4 LD D,D
MOV D,E 5 4 LD D,E
MOV D,H 5 4 LD D,H
MOV D,L 5 4 LD D,L
MOV D,M 7 7 LD D,(HL)
MOV E,A 5 4 LD E,A
MOV E,B 5 4 LD E,B
MOV E,C 5 4 LD E,C
MOV E,D 5 4 LD E,D
MOV E,E 5 4 LD E,E
MOV E,H 5 4 LD E,H
MOV E,L 5 4 LD E,L
MOV E,M 7 7 LD E,(HL)
MOV H,A 5 4 LD H,A
MOV H,B 5 4 LD H,B
MOV H,C 5 4 LD H,C
MOV H,D 5 4 LD H,D
MOV H,E 5 4 LD H,E
MOV H,H 5 4 LD H,H
MOV H,L 5 4 LD H,L
MOV H,M 7 7 LD H,(HL)
MOV L,A 5 4 LD L,A
MOV L,B 5 4 LD L,B
MOV L,C 5 4 LD L,C
MOV L,D 5 4 LD L,D
MOV L,E 5 4 LD L,E
MOV L,H 5 4 LD L,H
MOV L,L 5 4 LD L,L
MOV L,M 7 7 LD L,(HL)
MOV M,A 7 7 LD (HL),A
MOV M,B 7 7 LD (HL),B
MOV M,C 7 7 LD (HL),C
MOV M,D 7 7 LD (HL),D
MOV M,E 7 7 LD (HL),E
MOV M,H 7 7 LD (HL),H
MOV M,L 7 7 LD (HL),L
MVI A,byte 7 7 LD A,byte
MVI B,byte 7 7 LD B,byte
MVI C,byte 7 7 LD C,byte
MVI D,byte 7 7 LD D,byte
MVI E,byte 7 7 LD E,byte
MVI H,byte 7 7 LD H,byte
MVI L,byte 7 7 LD L,byte
MVI M,byte 10 10 LD (HL),byte
STAX B 7 7 LD (BC),A
STAX D 7 7 LD (DE),A
STA word 13 13 LD (word),A
LXI B,word 10 10 LD BC,word
LXI D,word 10 10 LD DE,word
LXI H,word 10 10 LD HL,word
LXI SP,word 10 10 LD SP,word
LHLD word 16 16 LD HL,(word)
SHLD word 16 16 LD (word),HL
SPHL 5 6 LD SP,HL
XCHG 4 4 EX DE,HL
XTHL 18 19 EX (SP),HL
ADD A 4 4 ADD A,A
ADD B 4 4 ADD A,B
ADD C 4 4 ADD A,C
ADD D 4 4 ADD A,D
ADD E 4 4 ADD A,E
ADD H 4 4 ADD A,H
ADD L 4 4 ADD A,L
ADD M 7 7 ADD A,(HL)
ADI byte 7 7 ADD A,byte
ADC A 4 4 ADC A,A
ADC B 4 4 ADC A,B
ADC C 4 4 ADC A,C
ADC D 4 4 ADC A,D
ADC E 4 4 ADC A,E
ADC H 4 4 ADC A,H
ADC L 4 4 ADC A,L
ADC M 7 7 ADC A,(HL)
ACI byte 7 7 ADC A,byte
SUB A 4 4 SUB A
SUB B 4 4 SUB B
SUB C 4 4 SUB C
SUB D 4 4 SUB D
SUB E 4 4 SUB E
SUB H 4 4 SUB H
SUB L 4 4 SUB L
SUB M 7 7 SUB (HL)
SUI byte 7 7 SUB byte
SBB A 4 4 SBC A
SBB B 4 4 SBC B
SBB C 4 4 SBC C
SBB D 4 4 SBC D
SBB E 4 4 SBC E
SBB H 4 4 SBC H
SBB L 4 4 SBC L
SBB M 7 7 SBC (HL)
SBI byte 7 7 SBC byte
DAD B 10 11 ADD HL,BC
DAD D 10 11 ADD HL,DE
DAD H 10 11 ADD HL,HL
DAD SP 10 11 ADD HL,SP
DI 4 4 DI
EI 4 4 EI
NOP 4 4 NOP
HLT 7 4 HLT
INR A 5 4 INC A
INR B 5 4 INC B
INR C 5 4 INC C
INR D 5 4 INC D
INR E 5 4 INC E
INR H 5 4 INC H
INR L 5 4 INC L
INR M 10 11 INC (HL)
DCR A 5 4 DEC A
DCR B 5 4 DEC B
DCR C 5 4 DEC C
DCR D 5 4 DEC D
DCR E 5 4 DEC E
DCR H 5 4 DEC H
DCR L 5 4 DEC L
DCR M 10 11 DEC (HL)
INX B 5 6 INC BC
INX D 5 6 INC DE
INX H 5 6 INC HL
INX SP 5 6 INC SP
DCX B 5 6 DEC BC
DCX D 5 6 DEC DE
DCX H 5 6 DEC HL
DCX SP 5 6 DEC SP
DAA 4 4 DAA
CMA 4 4 CPL
STC 4 4 SCF
CMC 4 4 CCF
RLC 4 4 RLCA
RRC 4 4 RRCA
RAL 4 4 RLA
RAR 4 4 RRA
ANA A 4 4 AND A
ANA B 4 4 AND B
ANA C 4 4 AND C
ANA D 4 4 AND D
ANA E 4 4 AND E
ANA H 4 4 AND H
ANA L 4 4 AND L
ANA M 7 7 AND (HL)
ANI byte 7 7 AND byte
XRA A 4 4 XOR A
XRA B 4 4 XOR B
XRA C 4 4 XOR C
XRA D 4 4 XOR D
XRA E 4 4 XOR E
XRA H 4 4 XOR H
XRA L 4 4 XOR L
XRA M 7 7 XOR (HL)
XRI byte 7 7 XOR byte
ORA A 4 4 OR A
ORA B 4 4 OR B
ORA C 4 4 OR C
ORA D 4 4 OR D
ORA E 4 4 OR E
ORA H 4 4 OR H
ORA L 4 4 OR L
ORA M 7 7 OR (HL)
ORI byte 7 7 OR byte
CMP A 4 4 CP A
CMP B 4 4 CP B
CMP C 4 4 CP C
CMP D 4 4 CP D
CMP E 4 4 CP E
CMP H 4 4 CP H
CMP L 4 4 CP L
CMP M 7 7 CP (HL)
CPI byte 7 7 CP byte
JMP address 10 10 JP address
JNZ address 10 10 JP NZ,address
JZ address 10 10 JP Z,address
JNC address 10 10 JP NC,address
JC address 10 10 JP C,address
JPO address 10 10 JP PO,address
JPE address 10 10 JP PE,address
JP address 10 10 JP P,address
JM address 10 10 JP M,address
PCHL 5 4 JP (HL)
CALL address 17 17 CALL address
CNZ address 11/17 10/17 CALL NZ,address
CZ address 11/17 10/17 CALL Z,address
CNC address 11/17 10/17 CALL NC,address
CC address 11/17 10/17 CALL C,address
CPO address 11/17 10/17 CALL PO,address
CPE address 11/17 10/17 CALL PE,address
CP address 11/17 10/17 CALL P,address
CM address 11/17 10/17 CALL M,address
RET 10 10 RET
RNZ 5/11 5/11 RET NZ
RZ 5/11 5/11 RET Z
RNC 5/11 5/11 RET NC
RC 5/11 5/11 RET C
RPO 5/11 5/11 RET PO
RPE 5/11 5/11 RET PE
RP 5/11 5/11 RET P
RM 5/11 5/11 RET M
RST 0 11 11 RST 0
RST 1 11 11 RST 8
RST 2 11 11 RST 10H
RST 3 11 11 RST 18H
RST 4 11 11 RST 20H
RST 5 11 11 RST 28H
RST 6 11 11 RST 30H
RST 7 11 11 RST 38H
PUSH B 11 11 PUSH BC
PUSH D 11 11 PUSH DE
PUSH H 11 11 PUSH HL
PUSH PSW 11 11 PUSH AF
POP B 10 10 POP BC
POP D 10 10 POP DE
POP H 10 10 POP HL
POP PSW 10 10 POP AF
IN byte 10 11 IN A,(byte)
OUT byte 10 11 OUT (byte),A
по крайней мере этим пользуюсь я
А нет, так не пойдет. Не принято
- - - Добавлено - - -
Сравните bc #101 и #100, будет понятно почему не покатит.
накинуть единичку при старте...
и мы же не эмулируем ldir
он и на флаги не особо влияет в оригинале...
просто задавать уже с учетом
Не совсем.
Можно старт сделать
Тогда вроде прокатывает. -1 байтКод:dec bc
inc c
inc b
- - - Добавлено - - -
Так по тактам не все я запомнил, получается
Табличка пригодилась, спасибо, мне так удобнее запомнить, может еще кому.Код:ld r,r 5(4)
dec/inc r 5(4)
dec/inc (hl) 10(11)
dec/inc rp 5(6)
ld sp,hl 5(6)
jp (hl) 5(4)
ex (sp),hl 18(19)
add hl,rp 10(11)
call c,addr 11/17(10/17)
in a,(port) 10(11)
out (port),a 10(11)
на всякий лучше ее еще кому то сверить
тк я ее делал из другой таблички...
Вот схема видеовыхода совместимая со старым цветом. В режиме старого цвета выполняется прямое управление лучами кинескопа, а сигнал RVV выбирает - в знакоместе задаётся цвет фона или цвет символа. В режиме нового цвета, сохранены 8 цветов, причём цвет имеет одновременно и символ и фон, а бит RVV освобождён для использования в качестве оперативного коммутатора фонтов, что позволяет одновременно в одном экране иметь 256 символов. Таким образом, расходом в 2 корпуса достигается не только выигрыш в качестве цвета, но и в количестве доступных символов.Цитата:
Сообщение от Vital72
Сигнал "Video" с выхода ИР13 управляет тем, будет выдан на выход код цвета символа или код фона. Сочетания цветов любые, т.е и цвет фона и цвет символа могут быть любыми из 256 цветов. Но всего сочетаний цветов - только 8. Код этого сочетания как-раз и поступает с выходов ВГ75. Таким образом эти 3 бита не цвет, а код, задающий какими чернилами и на каком фоне рисуется символ.
В режиме совместимости сигнал "Mode" равен 1, отчего сигнал RVV проходит и схема работает как и ранее. Одновременно сигналом "Mode" формируется ноль на входе ПЗУ фонта, отчего включён базовый фонт, что и требуется для антикварных программ. Естественно, в режиме совместимости сигналы PB0...PB4 с D14, также задающие номер фонта (если фонтов больше 2-х), должны быть нулями, чтобы был включён базовый фонт. ПЗУ РЕ3 прошито так, что в режиме совместимости со старым цветом на всех весах Rx, Gx, Bx полностью повторяются сигналы на 3-х входах РЕ3 (как будто бы РЕ3 вообще нет), что и обеспечивает совместимость.
В режиме нового цвета сигналом "Mode"=0 запрещается прохождение RVV на схему инверсии на ЛП5, - вместо RVV туда подаётся 0, отчего схема инверсии не действует. В режиме нового цвета инверсный сигнал "Мode" разрешает поступление на вход А10 ПЗУ знакогенератора сигнала от атрибутного выхода RVV ВГ75. Тем самым в этом режиме бит RVV служит для оперативный смены фонта. Благодаря использованию РЕ3, в новом режиме число цветов не изменилось, причём цвета стали более удобными для программ.
В качестве сигнала Mode, который переключает режим цвета, используется сигнал с тумблера или разряд порта C ППА D14.
Путём расхода ещё двух КП11 можно получить в данной схеме 2 палитры. Тогда коммутация выходов RGB делается не за счёт совместимой прошивки РЕ3, отчего сигнал "Mode" не подаётся на РЕ3 и её один вход освобождается. КП11-е коммутируют 8 выходов РЕ3. В режиме совместимости на выходы КП11 проходят сигналы GPA0, GPA1, HGLT (как в старой схеме цвета). А в режиме нового цвета на выходы проходят сигналы с РЕ3. На освободившийся адресный вход РЕ3 подаём бит выбора палитры PA0 ППА D14.
Однако, если для кодо-преобразования применять не РЕ3, а РТ5, то и без двух КП11-х получается 16 палитр выбираемых PA0...PA3 ППА D14.
Внимание. В данной схеме есть одно важное ограничение. Которое связано с тем, что в РК86 физически отсутствует сигнал BORDER, которым можно было бы гасить RGB на время обратного хода развёрток. Этот сигнал отсутствует по причине программного формирования бордюра, за счёт заполнения части экранного ОЗУ кодами 0 или пробел. Необходимо гасить RGB во время вывода бордюра (иначе сорвётся синхронизация. После вывода печатаемых символов строки все атрибутные сигналы сброшены, т.е 0. Это соответствует коду цвета 0. Код символа тоже 0 (или пробел). Таким образом во время бордюра выводится код цвета 0 и пустой символ, т.е выводится только цвет фона. Таким образом возникает ограничение, - цвет фона для кода цвета 0 - всегда должен быть чёрным. Из-за этого код 0 нельзя сделать желтым на синем, но можно сделать зеленым на чёрном и это будет код монохрома.
;--------------------
Решена проблема регенерации SIMM большого объёма. Для этого вводится счётчик регенерации, формирующий адреса регенерации A8, A9, A10, A11. Этот счётчик переключается с периодом вывода 4-х строк в момент вывода первой линии знакоместа. 4 строки необходимы, т.к в одной строке регенерируется только 64 столбца. 256 столбцов регенерируются за 4*64*10=2.56 МСЕК. SIMM 256 кб регенерируется за 5.12 МСЕК, SIMM 1 мб регенерируется за 10.24 МСЕК, а SIMM 16 мб регенерируется за 40.96 МСЕК, что с запасом удовлетворяет паспортным данных всех микросхем.