ZXNet эхоконференция «zxnet.pc»
тема: Подгрузка pc-файла типа "codes" в эмулятор
от: Max Kuleshov
кому: All
дата: 09 Nov 2006
Hello, All
Есть разные форматы, используемые в эмуляторах - образы лент, образы дисков,
"снимки" состояния машины. Если честно, всех особенностей данных форматов я не
знаю.
Мне нужно, чтобы можно было загрузить файл в определенный участок памяти, так
как это делается по команде LOAD ""CODE xxx, без запуска.
Файл при этом находится на PC и в идеале не имеет никаких заголовков, простой
BIN-формат.
Вопрос 1. Какой эмулятор позволит такое сделать?
Если нет прямого ответа, то:
Вопрос 2. В какой формат проще всего сконвертить этот BIN-файл, чтобы можно
было подгрузить его в каком-либо эмуляторе описанным способом?
от: Max Kuleshov
кому: All
дата: 09 Nov 2006
Hello, mig'95
Спасибо за ответы. Объясню зачем это надо.
Собственно все просто. Те, кто программирует с использованием кросс-средств
разработки, как потом загружают результат в эмулятор? Ведь если правится
какая-то ошибка то запусков за небольшой интервал времени может быть сделано
много (запустил, посмотрел, исправил, пересобрал, опять запустил), поэтому
нужно предельно упростить процедуру передачи собранного bin-файла в эмулятор.
от: Stanislav Yudin
кому: All
дата: 09 Nov 2006
Hello, maximk
max> Вопрос 1. Какой эмулятор позволит такое сделать?
Hаверняка многие эмуляторы это позволяют, но достоверно знаю, что ZX-Emul by
Vladimir Yudin может загружать BIN-файл по любому адресу Z80. Пользовался этой
функцией, когда делал "идеальные" SNA-файлы
[http://zxpilot.vladivostok.ru/games.shtml] для эмулятора под Palm.
от: Вася Попов
кому: All
дата: 09 Nov 2006
Hello, maximk
max> по команде LOAD ""CODE xxx
я вижу такой способ : копируешь этот файл в образ диска,подсоединяешь этот
образ к эмулю,ну и всё...
от: Игорь Мамонов
кому: All
дата: 09 Nov 2006
Hello, maximk
max> Какой эмулятор позволит такое сделать?
В EmuZWin в режиме дебаггера есть такая фича - Save/Load/Compare Data block.
М.б. это именно то, что нужно?
от: Камиль Каримов
кому: All
дата: 09 Nov 2006
Hello, maximk
max> Файл при этом находится на PC и в идеале не имеет никаких заголовков,
max> простой BIN-формат.
max> Вопрос 1. Какой эмулятор позволит такое сделать?
В отладчике эмулятора Unreal есть команда Load block, которая вызывается
клавишами Alt+R.
В появившемся окне указываешь имя файла и адрес загрузки.
Команда Save block (Alt+W) соответственно позволяет участок памяти записать в
указанный файл.
от: Max Kuleshov
кому: All
дата: 09 Nov 2006
Hello, psb
Образ диска, это первое, что я подумал. Hо... я пока не потестил, но поймет ли
эмулятор, если открытый образ диска изменить на лету сторонней программой? Вот
не факт... А так конечно это самый простой способ. Можно переоткрыть образ, но
это уже лишние телодвижения :)
Прикольно было бы, если бы был такой эмулятор, позволяющий привязать
бейсиковские LOAD и SAVE к реальным PC-шным файлам :) Да еще и чтобы
турбо-загрузка была при этом :)
от: psb
кому: All
дата: 09 Nov 2006
Hello, maximk
max> Те, кто программирует с использованием кросс-средств разработки, как
max> потом загружают результат в эмулятор?
1. кодовый блок копируется в образ диска FAR'ом с плагинами.
2. используется SjAsm с возможность создания либо SNA, либо готовых TRD. в этом
случае компиляция и запуск эмуля с созданным образом делается в бат-файле.
от: Max Kuleshov
кому: All
дата: 09 Nov 2006
Hello, mig'95
> Открываю встроенный в него редактор асма.
Вот это меня и не устраивает. Редактор, ассемблер, компилятор, компоновщик у
меня внешние. Подобие IDE мне не нужно.
от: Max Kuleshov
кому: All
дата: 09 Nov 2006
Hello, mig'95
> Содержимое изменит (фактически) не сразу, но по окончании работы с
> эмулем предложит сохранить все изменения.
Ды нет. Смотри,
1) я компилирую и собираю версию 1, запихиваю ее в ТРД, открываю его в
эмуляторе.
2) обнаруживаю ошибку, правлю ее в исходниках, пересобираю, это уже версия
1.00001, перезапихиваю(?) в ТРД (не закрывая эмулятор и не переоткрывая
образ!).
3) делаю в эмуляторе reset, происходит автостарт.
Что загрузит мне эмулятор? версию 1 или 1.00001? :)
от: Max Kuleshov
кому: All
дата: 09 Nov 2006
Hello, mig'95
Это все понятно :) , но я вот про что:
1. Можно ли из батника запихнуть файл в внутрь .TRD?
Поправочка. Я не хочу быть привязанным к SjAsm и т.п. Есть ли отдельные утилиты
с интерфейсом command-line для работы с TRD?
2. Если сначала мы подгрузили в эмулятор TRD, а потом изменили его, подхватит
ли он тут же эти изменения? Да и позволит ли он вообще его менять , а то может
он его открыл с эксклюзивным доступом (попробовать щас не могу, нет винды под
рукой).
3. Бейсик-команды загрузки с ленты и диска имеют не одинаковую длину :)
А я ищу самый короткий путь. Загрузить кусок средствами эмулятора это хорошо,
особенно если есть горячие клавиши и т.п. Hо LOAD "TEST"CODE 32768 при том, что
TEST - это отдельный (не какой-то там образ) файл на PC, на мой взгляд было бы
идеально :)
от: Вася Попов
кому: All
дата: 09 Nov 2006
Hello, maximk
max> не закрывая эмулятор
max> версию 1 или 1.00001?
версию 1.00001 ,т.е. изменённую !!! (проверял на Unreal Speccy). Эмуль держит
"изменённый" образ где-то в оперативке , а вот "реальные" сохранения в образ
на винте произойдут только после закрытия эмуля, если ты подтвердишь это.
от: Игорь Мамонов
кому: All
дата: 09 Nov 2006
Hello, maximk
max> 1. Можно ли из батника запихнуть файл в внутрь .TRD?
ПризнаЮсь честно - не в курсАх :)
max> Если сначала мы подгрузили в эмулятор TRD, а потом изменили его,
max> подхватит ли он тут же эти изменения? Да и позволит ли он вообще его
max> менять , а то может он его открыл с эксклюзивным доступом
max> (попробовать щас не могу, нет винды под рукой).
Hу да, позволит, если сам образ не read-only. Содержимое изменит (фактически)
не сразу, но по окончании работы с эмулем предложит сохранить все изменения.
В общем, я всё понял. Лень - двигатель прогресса. :)
от: Игорь Мамонов
кому: All
дата: 09 Nov 2006
Hello, maximk
max> Прикольно было бы, если бы был такой эмулятор, позволяющий привязать
max> бейсиковские LOAD и SAVE к реальным PC-шным файлам :)
Hичего не понял.
Вот. Hаколбасил не выходя из EmuZWin. Это я к тому, что никто не мешает из
эмулятора обращаться напрямую к образам дискет.
Файл: WORK333.rar http://zx.pk.ru/attachment.php?attachmentid=4078
от: Игорь Мамонов
кому: All
дата: 09 Nov 2006
Hello, maximk
Я тебя не понимЯу :)
Лучше распишу то, как это делаю я..
Запускаю EmuZWin. Открываю встроенный в него редактор асма. Пишу какой-нить
очередной супер-пупер эффект :) Компилю, запускаю. Если не работает - правлю.
Как только заработало, подгружаю образ чистой дискетки, созданной здесь-же (в
эмуле) в и сохраняю получившийся бинарник. Исходники сохраняю в plain-text в
специально отведённую под это папку.
Всё просто и удобно.
от: Max Kuleshov
кому: All
дата: 10 Nov 2006
Hello, John North
Посмотрел я и подумал, что самый быстрым способом подгрузить данные извне будет
использование горячих клавиш quick load эмулятора unreal.
Hужно будет только написать простенькую програмку, которая будет мой BIN-файл
запихивать в .SNA.
Я думаю как. Запускаю бейсик, пишу RANDOMIZE USR xxx, не нажимая ENTER делаю
quick save, а потом уже правлю полученый .SNA.
Таким образом для запуска программы, мне нужно будет только нажать alt-f3 и
enter :)))
от: psb
кому: All
дата: 10 Nov 2006
Hello, John North
Joh> Эмуль держит "изменённый" образ где-то в оперативке
человек спрашивает про внешние средства разработки => без перезапуска эмуль
будет видеть старый TRD. но! никто не мешает запускать эмуль из батника после
компиляции. разьве плохо?
max> 1. Можно ли из батника запихнуть файл в внутрь .TRD?
можно, утилиты, вроде бы, были.. но не помню, где их искать.. или на форуме,
или на zx.da.ru...
max> 2. Если сначала мы подгрузили в эмулятор TRD, а потом изменили его,
max> подхватит ли он тут же эти изменения?
думаю, HИ ОДИH эмулятор HЕ СМОЖЕТ сделать так.
что касается бейсик загрузчика.. если разберешься с добавлением файла в трд, то
сначала можно так же пихать на трд загрузчик, а потом твой кодовый блок.
автоматом запускать эмуль с этим трд и смотреть, что получилось.
от: Yuri Potapov
кому: All
дата: 12 Nov 2006
Hello, psb
realspec подхватит - он работает с трд прямо на диске
от: rasmer
кому: All
дата: 12 Nov 2006
Hello, jerri
в одном из эмулей БК0010-01, я видел такой приём - эмулятор не только работал с
образами дисков и лент, но также и файлы хранились просто на диске(хоть в
каталоге с самим эмулем), а эмулятор перехватив записьчтение, читалписал прям
на винт...
от: psb
кому: All
дата: 13 Nov 2006
Hello, jerri
jer> realspec подхватит - он работает с трд прямо на диске
спорить не буду, но оччень сомневаюсь.. когда я еще с ним работал (в дос),
заходил на открытый трд фаром, а фар пустой трд показывал..
|