Форматы файлов ПК-01 "Львов" для эмуляторов

Все об эмуляции ПК-01 "Львов" на современных платформах
User avatar
liberation
Posts: 1405
Joined: 11 Aug 2008, 17:05
Location: Украина
Contact:

Re: Форматы файлов ПК-01 "Львов" для эмуляторов

Post by liberation »

Товарищи, а какова структура файлов .E3 от Эмулятора-3000?
Carthago delenda est, Carthaginem delendam esse
sas9568635
Posts: 372
Joined: 20 Apr 2012, 16:00
Location: Конотоп

Re: Форматы файлов ПК-01 "Львов" для эмуляторов

Post by sas9568635 »

Только что морочился с сохранением в формат SAV. Так и не смог добиться, чтобы его открывал E3000. Много раз перечитывал сообщение от Zelya (описание формата SAV), пробовал но ничего не получилось. Может конечно я, что-то не так понимал.
Что-бы облегчить жизнь новичкам которые возьмутся за чтение/запись формата SAV напишу следующее, кому-то оно пригодится. И кто-то посчитает это более понятней чем собщение от Zelya
Итак, мой эмулятор читает SAV-файлы сохранненые таким образом:
(таким образом у Вас прочитается большинство SAV-файлов, а также сохранёных SASemulator*,Е3000, LVOVulator )
{курсор файла в “0”}
if pos ('LVOV/DUMP',SignFile)=1 then Begin// формат узнал :-)
PosBuffer[1]:=17; {файл в позицию 17}
LoadRAM(0,65535);LoadVRAM(0,16383);LoadPorts(0,255);
//LoadRegistrs;// чтение регистров
r_B:=LoadFromBufferByte(1);r_C:=LoadFromBufferByte(1);
r_D:=LoadFromBufferByte(1);r_E:=LoadFromBufferByte(1);
r_H:=LoadFromBufferByte(1);r_L:=LoadFromBufferByte(1);
r_A:=LoadFromBufferByte(1);r_F:=LoadFromBufferByte(1);
r_SP:=LoadFromBufferWord(1);r_PC:=LoadFromBufferWord(1);
Сохраняю в SAV таким образом:
(открывают эмуляторы: SASemulator, LVOVulator, Башкирия, неоткрывает: Е3000)
{курсор файла в “0”}
AddToBufferString(1,'LVOV/DUMP/');
PosBuffer[1]:=17;{файл в позицию 17}
SaveRAM(0,65535);//запись RAM
SaveVRAM(0,16383); //запись RAM
SavePorts(0,255);//Записываем Порты
// SaveRegistrs; Запись регистров по аналогии (последовательности) чтения регистров
Изучение окрывания файла SAV, сохраннённых другими эмуляторами:
“SASemulator” открывает сохранённые: неизв.происхожденния, SASemulator*, Е3000, LVOVulator
“LVOVulator” открывает сохранённые: неизв.происхожденния, SASemulator, Е3000, LVOVulator
“Башкирия» открывает файлы сохранённые неизв.происхожденния, SASemulator,Е3000, LVOVulator
“E3000» открывает файлы сохранённые неизв.происхожденния, Е3000,
“E3000» Не открывает: LVOVulator, SASemulator
User avatar
Zelya
Site Admin
Posts: 1071
Joined: 24 Jul 2008, 12:05

Re: Форматы файлов ПК-01 "Львов" для эмуляторов

Post by Zelya »

Во-первых, правильный хедер для нового SAV формата это "LVOV/DUMP/2.0/".
Во-вторых, согласно того же нового SAV формата, в конце идет регистр PC, который для Вашей программы должен быть, как Вы писали, 38891, а у Вас байты "de 84" - непонятно. Скорее всего, мешанина форматов.
sas9568635
Posts: 372
Joined: 20 Apr 2012, 16:00
Location: Конотоп

Re: Форматы файлов ПК-01 "Львов" для эмуляторов

Post by sas9568635 »

Zelya wrote: в конце идет регистр PC, который для Вашей программы должен быть, как Вы писали, 38891, а у Вас байты "de 84" - непонятно. Скорее всего, мешанина форматов.
Ну дак вот смотрю, что рег. РС у меня последний (!) иначе хрен бы открывал мой эмуль SAVы других эмулей, а также созданый моим эмулем SAV хрен бы отркрывали эмули Марат и Башкирия.
Вся загвоздка в Е3000 всего лишь.

Можно это четко написать ? Как это новый sav "выглядет"
Итак:
{курсор файла в “0”}
if pos ('LVOV/DUMP/2.0/',SignFile)=1 then Begin// формат узнал
PosBuffer[1]:=17; {файл в позицию 17}
LoadRAM(0,65535);LoadVRAM(0,16383);LoadPorts(0,255);
//LoadRegistrs;// чтение регистров
r_B:=LoadFromBufferByte(1);r_C:=LoadFromBufferByte(1);
r_D:=LoadFromBufferByte(1);r_E:=LoadFromBufferByte(1);
r_H:=LoadFromBufferByte(1);r_L:=LoadFromBufferByte(1);
r_A:=LoadFromBufferByte(1);r_F:=LoadFromBufferByte(1);
r_SP:=LoadFromBufferWord(1); r_PC:=LoadFromBufferWord(1);
Правильно ? Е3000 откроет ?
Но я помоему это пробовал...
Подтверди что правильно еще раз попробую.
А что между хендером и 17 позицией нули? 32? там типа имя файла ?
User avatar
Zelya
Site Admin
Posts: 1071
Joined: 24 Jul 2008, 12:05

Re: Форматы файлов ПК-01 "Львов" для эмуляторов

Post by Zelya »

sas9568635 wrote:Подтверди что правильно еще раз попробую.
Вроде, все правильно. Но следует внимательно проверить, как работает запись вордового (16-битного числа).
sas9568635
Posts: 372
Joined: 20 Apr 2012, 16:00
Location: Конотоп

Re: Форматы файлов ПК-01 "Львов" для эмуляторов

Post by sas9568635 »

Zelya wrote:
sas9568635 wrote:Подтверди что правильно еще раз попробую.
Вроде, все правильно. Но следует внимательно проверить, как работает запись вордового (16-битного числа).
Проверить то несложно, НО как ТРИ(!) эмулятора, могут неправильно писать/читать ворд число ? :-) один Е3000 делает всё правильно ? :-)
Да, и еще....
если у меня пишется PC неправильно, то тогда и SP тоже пишется неправильно? иль с SP могло "пронести"?...
User avatar
Zelya
Site Admin
Posts: 1071
Joined: 24 Jul 2008, 12:05

Re: Форматы файлов ПК-01 "Львов" для эмуляторов

Post by Zelya »

sas9568635 wrote:Да, и еще....
если у меня пишется PC неправильно, то тогда и SP тоже пишется неправильно? иль с SP могло "пронести"?...
Честно говоря, понятия не имею. Сейчас нет возможности баловаться с этими эмулями, но думается, что здесь проблема в мешанине из двух форматов, старого SAV и нового SAV 2.0. Если разберусь - дам знать.
sas9568635
Posts: 372
Joined: 20 Apr 2012, 16:00
Location: Конотоп

Re: Форматы файлов ПК-01 "Львов" для эмуляторов

Post by sas9568635 »

Вот подрючил немного формат Sav ДЛЯ Е3000.
Шо я могу сказать... :-)
Надо дописывать послендних 14 байт!
Надо вот так:
AddToBufferString(1,'LVOV/DUMP/2.0/');
// хадер 'LVOV/DUMP/2.0/'
// (запасные варианты хадера 'LVOV/DUMP/2.0/H' или 'LVOV/DUMP/2.0/H+' или
'LVOV/DUMP/2.0/H+'+#0 )
PosBuffer[1]:=17;
SaveRAM(0,65535);//запись RAM
SaveVRAM(0,16383); //запись VRAM
SavePorts(0,255);//Записываем Порты
//запись регистров
r_B r_C r_D r_E r_H r_L r_A r_F r_SP r_PC
// далее дописываем байты
$c1 , $AF ,$FD ,$02 $43 ,$02 ,$45 ,$02 ,$94 ,$DD ,$A9 ,$BE ,$AB ,$BE
И Е3000 читает SAV-формат (размер файла его должен быть 82219
sas9568635
Posts: 372
Joined: 20 Apr 2012, 16:00
Location: Конотоп

Re: Форматы файлов ПК-01 "Львов" для эмуляторов

Post by sas9568635 »

liberation wrote:Товарищи, а какова структура файлов .E3 от Эмулятора-3000?
Когда-то, когда я только начинал писать свои первые DisasmLV
Я его использовал для того чтобы «выцепить» RAM
делал так:
Найти первый “Data”, + 4 байта, с 5-го байта от «дата» полный RAM т.е от 0-65535 (находится «дата» где-то в позиции файла >= $239

Найти второй «дата» (находится «дата» где-то в позиции файла >= $10260)
+ 4 байта, с 5-го байта от «дата» полный VRAM т.е от 0-16383
User avatar
liberation
Posts: 1405
Joined: 11 Aug 2008, 17:05
Location: Украина
Contact:

Re: Форматы файлов ПК-01 "Львов" для эмуляторов

Post by liberation »

Вадим, сделайте доброе дело, не в службу, а в дружбу. Сделайте отдельную статик-пэйдж, куда вынесите в таблицах структуру основных форматов файлов для эмуляторов (олимпийский минимум - .lvt (.lvr) и .sav). В таблицах оно нагляднее. Потом можно будет в первую реплику добавить ссылку на эту страницу. Так будет академичнее. А то уже сейчас начинается ужас.
Carthago delenda est, Carthaginem delendam esse
User avatar
liberation
Posts: 1405
Joined: 11 Aug 2008, 17:05
Location: Украина
Contact:

Re: Форматы файлов ПК-01 "Львов" для эмуляторов

Post by liberation »

liberation wrote:Вадим, сделайте доброе дело, не в службу, а в дружбу.
Спасибо!
Carthago delenda est, Carthaginem delendam esse
User avatar
Zelya
Site Admin
Posts: 1071
Joined: 24 Jul 2008, 12:05

Re: Форматы файлов ПК-01 "Львов" для эмуляторов

Post by Zelya »

liberation wrote:
liberation wrote:Вадим, сделайте доброе дело, не в службу, а в дружбу.
Спасибо!
Вы же знаете Олег, я не по добрым делам. Особенно когда это документация, репозитории и социальные сети :)
hlorat
Posts: 14
Joined: 24 Feb 2016, 11:03

Re: Форматы файлов ПК-01 "Львов" для эмуляторов

Post by hlorat »

Ребята, второй день лазию по вашим форумам и нигде не могу найти прогу, с помощью которой можно перевести wav-файлы с кассет в файлы для эмуляторов - lvt или sav. Подскажите пожалуйста способ, желательно с виндовой прогой, есть несколько кассет которые хотелось бы "оживить" на эмуляторах.
User avatar
Zelya
Site Admin
Posts: 1071
Joined: 24 Jul 2008, 12:05

Re: Форматы файлов ПК-01 "Львов" для эмуляторов

Post by Zelya »

Добрый день!

Попробуйте, пока, вот тут:
http://lvovpc.cu.cc/

Если будут проблемы, то я поищу более суровые утилиты. Если и они не поедут, обратимся к специализированным гуру.

ПС Если не секрет, а что за кассеты и откуда они у Вас?
hlorat
Posts: 14
Joined: 24 Feb 2016, 11:03

Re: Форматы файлов ПК-01 "Львов" для эмуляторов

Post by hlorat »

Типа вот таких:

Плюс еще мои программы, игры, которые я сам писал, когда у меня был этот компьютер.
Attachments
Львов, кассета Старт-сервис Games-01.jpg
Post Reply

Who is online

Users browsing this forum: No registered users and 1 guest