Анализаторы забыл прикрутить :)
Вид для печати
Пусть будет с анализаторами :)
Называется Z80 PC Assembler, автор Peter Hanratty
Наверняка из этого набора :-)Цитата:
Откуда он - непомню.
Отличная вещь, но есть пара "засад": не понимает команды типа:Цитата:
Я и спользовал его для написания коротеньких прог для отладки "Ориона". В общем, забирайте кому надо.
И не указывает место, где возникла ошибка при компиляции. Как дебил потом сидишь и разбираешься в многозначительной фразе "Invalid, missed or duplicated label".А ежели у меня этих меток дофига? То-то...Код:ld yh,FFh
ld yl,a
Впрочем, при использовании метода из сообщ. №1 тоже нифига не понятно, что там компилятор в консоль валит (строка с ошибкой и т.д.).
Короче, идеал пока недостижим...
Для создания программы в ассемблере Z80 на PC под эмулятором скачиваем пакет основных программ (программы выбраны сугубо индивидуально, по такому же принципу используется любая удобная связка):
Spectaculator – эмулятор ZX с простым интерфейсом
Crimson Editor 3.70 Release – обычный текстовый редактор, где непосредственно и будет редактироваться текст программы
SjASMPlus Z80 кросс ассемблер – компилятор нужен для превращения текстового файла в готовый код либо в снапшоте либо с формированием файла на trd образе (как это делается написано в help к SjASM)
1. Устанавливаем Spectaculator
2. Устанавливаем Crimson Editor
3. Далее прикручиваем к редактору компилятор вызываемый по нажатию F4
Tools → Preferences → User Tools (горячие кнопочки)
Рис.1
1. В Menu text пишем название т.е. Assembly
2. В Command прописываем путь к компилятору (к sjasmplus.exe)
3. В Argument указываем, текущий текстовый файл $(FileName) (стрелочка справа)
4. В Inital Dir указываем текущую директорию $(FileDir) (стрелочка справа)
5. В окошке Hot Key нажимаем F4 (или другую, кому как нравится)
В результате нажатия F4 получаем компиляцию (ассемблирование) текстового файла открытого в данный момент.
В этом же окне поставьте галочку Capture output (внизу появится окошко где будет виден результат компиляции)
4. Далее прикручиваем к редактору эмулятор вызываемый по нажатию F1.
Рис.2
1. В Menu text пишем название т.е. Emul
2. В Command прописываем путь к Эмулятору (к Spectaculator.exe)
3. В Argument указываем заголовок откоплилированного файла $(FileTitle) (кнопка справа) и дописываем .sna который будет запущен сразу после загрузки эмулятора
4. В окошке Hot Key нажимаем F1 (или другую, кому как нравится)
В результате нажатия F1 получаем запуск эмулятора и откомпилированного SNA файла.
Вот в принципе и все, что надо для первого раза.
----------------------------------------------------------------------
Пишем в редакторе простой пример:
В примере делаем очистку экрана, бордюр черным и зависаниеКод:device zxspectrum128
org #6000
ei
xor a
out (254),a
ld hl,23295
ld (hl),a
or (hl)
dec hl
jr z,$-3
jr $
savesna "probe.sna",#6000
Сохраняем текстовый файл с именем probe. Имя файла обязательно должно совпадать с тем, что написано в savesna. Если кто знает, как автоматически в тексте в savesna ставить "имя текстового файла" (типа $FileName) поделитесь, у меня не получилось
Нажатие F4 – получаем снапшот написанного
Нажатие F1 – получаем запуск эмулятора и Вашего снапшота (и любуемся написанным)
------------------------------------------------------------------------
Кому надо расскрасить команды скачиваем архив с двумя файлами
(z80-asm.spc и z80-asm.key) распаковываем его в папку Crimson'a SPEC
Далее Tools → Preferences → Syntax Type на первой свободной Syntax Type пишем:
Description: Z80
Lang Spec: Прописываем путь к файлу z80-asm.spc
KeyWords: Прописываем путь к файлу z80-asm.key
Далее: Document → Syntax Type → Z80
И наслаждаемся листом программы в цвете
http://s45.radikal.ru/i107/1109/b6/719805c953ed.jpg
http://s03.radikal.ru/i176/1109/01/cda367427ce0.jpg[COLOR="Silver"]
---------- Post added at 10:57 ---------- Previous post was at 10:52 ----------
РЕЗУЛЬТАТ В ДВА НАЖАТИЯ
Всё настроил по мануалу ,кнопки срабатывают :)
хотел узнать сильно отличается этот асм от GENS4?не компилируется простейшая программка(я только учусь -написал что первое в голову пришло для проверки)
http://s61.radikal.ru/i173/1109/14/012537b2851d.jpg
В эмуляторе EmuZWin встроенный ассемблер и отладчик. Я в нем сижу, удобно.
я вообще сижу на реале и набираю программки в GENS4 по книжке "Как написать игру на асме" и пока всё запускалось и работало как нада :)
http://s19.radikal.ru/i192/1109/aa/b356a6505489.jpg
palsw, ну ты зачем впритык-то написал. надо минимум 1 пробел спереди, а то он считает, что это или инструкция, или метка.
---------- Post added at 12:51 ---------- Previous post was at 12:48 ----------
Не сильно. Во-первых ENT надо без $, и так понятно, где надо. Во-вторых, тут он вообще не нужен, этот ENT, он используется только, если у тебя программа будет ассемблироваться в другой адрес, соответственно в паре с командой DISP (прочитай в документации, там описано). Так что убери её совсем и у тебя все заработает.
---------- Post added at 12:52 ---------- Previous post was at 12:51 ----------
Можно и в одно, если побольше аргументов написать или батник какой запускать, если кримсон не понимает.