Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2013.03.22;
Скачать: CL | DM;

Вниз

Команды КР580 в виде Дельфи процедур   Найти похожие ветки 

 
sas9568635 ©   (2012-07-12 14:50) [0]

Пишу среду разработки  (Эмулятор)… (http://sas.forumbb.ru/viewtopic.php?id=290)
Правильно ли реализованы следующие процедуры:

Procedure SBBD;
Begin
if FlagC then wremb:=1 else wremb:=0;
RgA:=RgA-RgD-wremb;
end;

Procedure SBI(b:byte);
Begin
if FlagC then wremb:=1 else wremb:=0;
RgA:=RgA-b-wremb;
end;

Procedure ORI(b:byte);
Begin
RgA:=RgA or b;
SetFlagAc(false);SetFlagC(false);
end;


Не знаю как реализовать Команду DAA на Дельфи, вот есть вырезки из СИ(которого я не знаю) и Асма, помогите транслировать в Дельфи конструкции или опишите пожалуйста каждую строку словами

Procedure DAA;
case 0x27: // 27 DAA
tmp1 = 0;
if ((RgF & f_C) || ( RgA         > 0x99)) tmp1 |= 0x60;
if ((RgF & f_A) || ((RgA & 0x0F) > 0x09)) tmp1 |= 0x06;
tmp2 = RgA + tmp1;
RgF = i8080_flags[tmp2 & 0xFF];
if ((tmp2 ^ RgA ^ tmp1) & 0x10) RgF |= f_A;
if (tmp2 > 0xFF) RgF |= f_C;
RgA = tmp2 & 0xFF;
clock += 4;
izmRgPC(+1);
break;


Вот асм реализация DAA

; DAA
C27:
 mov ax, [RgPSW]
 sahf
 daa
 lahf
 mov [RgPSW], ax
 ret

вот еще огрызок который мне пытались перевести на паскаль (Дельфи):

tmp := src1 + src2;
SetFlagAc(((src1 xor src2 xor tmp) and 16) <> 0);
dst := tmp;


 
Сергей М. ©   (2012-07-12 15:42) [1]


> Вот асм реализация DAA


ну так и возьми ее за интересующую реализацию)
Обязательно на Делфи что ли лепить процедуры эмуляции ?
На basm-то еще лучше будет..


 
Inovet ©   (2012-07-12 15:58) [2]

Дежавю?
http://delphimaster.net/view/2-1340908025/


 
sas9568635 ©   (2012-07-12 16:04) [3]


> ну так и возьми ее за интересующую реализацию)Обязательно
> на Делфи что ли лепить процедуры эмуляции ?На basm-то еще
> лучше будет..

У меня уже было такое что пытался прикрутить "левую" асм процедуру... То заПУШЕвать регистры надо... то еще чего... то результат как "выцепливать" хрен поймешь...


 
Германн ©   (2012-07-13 01:27) [4]


> У меня уже было такое что пытался прикрутить "левую" асм
> процедуру... То заПУШЕвать регистры надо... то еще чего.
> .. то результат как "выцепливать" хрен поймешь...

Хм. Пишешь эмулятор некоего процессора и не знаешь как правильно использовать конкретный ассемблер?


 
Inovet ©   (2012-07-13 06:23) [5]

> [4] Германн ©   (13.07.12 01:27)
> Пишешь эмулятор некоего процессора и не знаешь как правильно
> использовать конкретный ассемблер?

Копипастит. А в этом сообщении о том, кусоук из асм программы не получилось вставить в Делфи. Оно и понятно, читать справку на эту тему не барское дело.


 
sas9568635 ©   (2012-07-14 19:42) [6]


> читать справку на эту тему не барское дело.

Да чего мне одни процедуры писать на пасе, а другие на асме... вот даже так ! ну смешно ведь блин...  
Граждане! Я на каком форуме?... На форуме "Базарные бабы"?.. Нет!?... Дак а чего когда я задаю вопросы мне всекие реплики и коментарии не по делу пишутся?... Типа: "А что...?"  "А зачем...?" "А почему в..?"



Страницы: 1 вся ветка

Текущий архив: 2013.03.22;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.05 c
15-1351654923
Kindle
2012-10-31 07:42
2013.03.22
"Бинарный файл. Продолжить?"


15-1348607335
MastaK
2012-09-26 01:08
2013.03.22
Передачи про животных


15-1336653449
AV
2012-05-10 16:37
2013.03.22
Нечеткое сравнение строк или что посоветуете?


2-1342148174
delhpiCasual
2012-07-13 06:56
2013.03.22
Задваивается изображение формы


2-1336118119
igorium
2012-05-04 11:55
2013.03.22
Как открыть папку в проводнике (вид - эскиз)