Важная информация

User Tag List

Страница 4 из 7 ПерваяПервая 1234567 ПоследняяПоследняя
Показано с 31 по 40 из 65

Тема: Помогите завести EMUzWIN 0.27

  1. #31
    Activist
    Регистрация
    23.03.2005
    Адрес
    г. Чернигов, Украина
    Сообщений
    477
    Спасибо Благодарностей отдано 
    15
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Цитирую из описания аласма:
    1. include "filename.ext",2048
    Включение в компилируемую программу кодового блока с диска размером "длина" - очень нужно

    2. DS количество повторений[,список байт]
    Список байт (по умолчанию нулевой байт) копируется в текущий
    адрес компиляции. Число циклов = "количество повторений".
    - что-то похожее, думаю, уже есть ?

    3. При загрузке текста с диска он сканируется на наличие в нем "+"
    в начале каждой строки. В процессе компиляции все встреченные
    "+" будут заменены на "-", что заставит компилятор пропускать
    строки при следующем ассемблировании.

    - не очень важно

    4. LOCAL
    <тело>
    ENDL
    Объявление локальных меток. Все метки в пределах этой
    операторной скобки будут невидимы вне ее (кроме меток,
    начинающихся с символа @ - это глобальные метки). Допускаются и
    вложенные конструкции.

    - это и есть аналог PROC ?

    5. DISPLAY [/L,]["any text",][[/D|/H|/A,][/T,]выражение]
    Отображает текст или числа в процессе ассемблирования. Ключи
    /D, /H и /A устанавливают формат вывода для одного следующего
    числа. Далее числа выводятся в текущей системе счисления. /D -
    десятичное число, /H - шестнадцатиричное, /A - в обеих
    системах.
    /L указывает, что необходимо печатать не с новой строки.
    /T выводит сначала само выражение, потом его значение.
    Примеры:
    DISPLAY "code size: ",/D,end-start
    DISPLAY /A,"abc+xyz=",abc+xyz
    DISPLAY "simple"," text"
    6. Выражения
    {a} - слово, находящееся в памяти по адресу a
    $$ - текущая страница кода

    Теперь проблемы, о которых говорил АлКо:

    Во всех операциях, кроме + и -, не допускается использование
    меток, которые будут определены ниже (из-за однопроходности)

    - бывает, кстати. В emuZasme такого нет ?

  2. #31
    С любовью к вам, Yandex.Direct
    Размещение рекламы на форуме способствует его дальнейшему развитию

  3. #32
    Master Аватар для Vladimir Kladov
    Регистрация
    09.02.2005
    Адрес
    Новосибирск
    Сообщений
    933
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    17
    Поблагодарили
    17 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Версию положил, можно брать. Сейчас между прочим почитаю и отвечу на пост. (А раньше нельзя было или хотя бы мылом? Теперь уже после драки придется смотреть).
    Последнюю версию EmuZWin (2.7) можно получить по этой ссылке, а "официальная" страница с описанием здесь. Если что-то не пашет, берите там же версии 2.6 или старше. [B]

  4. #33
    Master Аватар для Vladimir Kladov
    Регистрация
    09.02.2005
    Адрес
    Новосибирск
    Сообщений
    933
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    17
    Поблагодарили
    17 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    1. у меня уже FILE "имя"[,start[,len]]. INCLUDE я оставил для включения куска сорцов как раньше. (Хм, рекомендую пока после INCLUDE ставить сразу метку.)

    2. Есть DUP n ... EDUP, FOR i=val_list ... EFOR

    3. насчет + - я не понял. Не дело асма менять исходник. По правилам, он должен работать в режиме read-only. Это железно.

    4. PROC ... EPROC - Все то же и для того же. Опционально префиксом локальной метки может быть @, _, !, \, что-то еще не помню - в опциях асма. Локальные можно дублировать сколько угодно, и задавать направление для перехода.

    5. Да это примерно то же что ERROR, вот только вывод числа я не предусмотрел. Ну можно сделать и DISPLAY, только формат попроще бы, типа
    DISPLAY 'txt'[,#expr[,#passes]] (маска на каких проходах делать вывод, как в ERROR).

    У меня двух-проходный, а если спользуется C-- -like, то еще делается и третий проход, не вижу с этим проблем. Скорость у меня получилась хорошая, 48К из дизассемблированного кода компилируется меньше секунды. Метки должны быть выше определены только в особых случаях: для повторителей в DEFB (#expr)n..., для ORG. Вроде еще для чего-то. Макросы должны быть выше определены, DEFINE's. Все остальное (вроде) может вниз ссылаться.

    В общем все в правилах написано, должно соответствовать.
    Последнюю версию EmuZWin (2.7) можно получить по этой ссылке, а "официальная" страница с описанием здесь. Если что-то не пашет, берите там же версии 2.6 или старше. [B]

  5. #34
    Master Аватар для Vladimir Kladov
    Регистрация
    09.02.2005
    Адрес
    Новосибирск
    Сообщений
    933
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    17
    Поблагодарили
    17 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Сейчас положу первое обновление. И, эх, как всегда первый блин - комом, хоть что нибудь да не так. Не протестил EQU, пока исправлял одно, пропучтил другой. Сейчас так формально более ништяк. Ссылка на обновление ZXAsmPP.dll здесь, и потом будет здесь же (там только собранная dll, примерно 40К в архиве, если очень нужны и исходники, буду и их выкладывать туда же).

    Тестировал я на реальном коде, и одновременно писал максиально нереальный (в смысле с использованием всех особенных штук). Так что эта версия асма должна быть уже повернее.

    Хотя со скоростью зря я радовался. Поставил цикл FOR i=0 TO 255 а в нем вложенный FOR i=j TO 8 и там по IF #expr THEN macro1 ELSE macro2 EIF, и как... он задумалось... В итоге через полминуты все ОК, компилируется, но это что-меня не устраивает. Надо чего-то еще думать как это убыстрить. Может быть (если тормоза в этом) придется запретить вкладывать INCLUDE внутрь FOR/DUP.
    Последнюю версию EmuZWin (2.7) можно получить по этой ссылке, а "официальная" страница с описанием здесь. Если что-то не пашет, берите там же версии 2.6 или старше. [B]

  6. #35
    Activist
    Регистрация
    23.03.2005
    Адрес
    г. Чернигов, Украина
    Сообщений
    477
    Спасибо Благодарностей отдано 
    15
    Спасибо Благодарностей получено 
    1
    Поблагодарили
    1 сообщение
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Пол-минуты - это не время Будем тестить.

  7. #36
    Master Аватар для Vladimir Kladov
    Регистрация
    09.02.2005
    Адрес
    Новосибирск
    Сообщений
    933
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    17
    Поблагодарили
    17 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Скорость победил (новое лежит). Кажется, еще и проблемы с устойчивостью были. Возможно придется сам эмулятор пересобрать и переложить. Если та версия что лежит сейчас на выходе ругается (ругается или не ругается?).

    Если письма пишите, пишите в поле subj что-нибудь конкретное и покороче. Типа EmuZWin - bla-bla-bla. А то я не знаю теперь, получил я письмо и убил его или оно просто еще не дошло.
    Последнюю версию EmuZWin (2.7) можно получить по этой ссылке, а "официальная" страница с описанием здесь. Если что-то не пашет, берите там же версии 2.6 или старше. [B]

  8. #37
    Master Аватар для Vladimir Kladov
    Регистрация
    09.02.2005
    Адрес
    Новосибирск
    Сообщений
    933
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    17
    Поблагодарили
    17 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Ах, да. Забыл убрать "запрет" на вложенные инклюды (хотя самые тормоза были не в этом, а вызове макросов). Впрочем, это (наверняка) не последний апдейт.

    Вообще, убивает как тормозно работает куча во всех этих ЯВУ и как тормозно в частности работают huge strings. Впрочем, я избавился сейчас вообще от всех huge strings, добавил хэширование, специальные скоростные объекты для хранения таблиц имен, свой певдо-менеджер памяти (а чего там мелочиться освобождать ее кусочками, потом в этой куче только тормоза одни - проще выделять до опупения пока идет компиляция и ничего не освобождать, а по окончании разом все освободить, все быстрее будет).

    Пишите письма. Я пошел сыну сказку читать, пора ему спатеньки.
    Последнюю версию EmuZWin (2.7) можно получить по этой ссылке, а "официальная" страница с описанием здесь. Если что-то не пашет, берите там же версии 2.6 или старше. [B]

  9. #38
    Master Аватар для Vladimir Kladov
    Регистрация
    09.02.2005
    Адрес
    Новосибирск
    Сообщений
    933
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    17
    Поблагодарили
    17 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    вложенные инклюды - ерунда. Совсем забыл, что для DISPLAY я поменял число параметров в callback - функции для передачи сообщения (или не поменял? точно уже не вспомню), так что выклядываю уже и билд 2.6а версии 2.7 эмулятора в полном архиве, если что - берите опять метр. Заодно раскраска для некоторых директив в исходнике подпралена, и DISPLAY с END добавлены в покраску.

    Готово, лежит.
    Последний раз редактировалось Vladimir Kladov; 03.02.2006 в 21:04.
    Последнюю версию EmuZWin (2.7) можно получить по этой ссылке, а "официальная" страница с описанием здесь. Если что-то не пашет, берите там же версии 2.6 или старше. [B]

  10. #39
    Guru Аватар для fan
    Регистрация
    11.02.2005
    Адрес
    Москва
    Сообщений
    3,789
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    4
    Поблагодарили
    4 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Чёто KAY остался совсем без менюшки для выбора пути к ПЗУшке , и ещё желательно сделать отдельную мененюшку под его ПЗУшку с тыр дос .
    И кстати переназначенные пути ПЗУшек то ли не сохраняются , толи обнуляются на дефолтные.
    З.Ы. Лучше все настройки хранить в виде простого текстового файла.

  11. #40
    Master Аватар для Vladimir Kladov
    Регистрация
    09.02.2005
    Адрес
    Новосибирск
    Сообщений
    933
    Спасибо Благодарностей отдано 
    0
    Спасибо Благодарностей получено 
    17
    Поблагодарили
    17 сообщений
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    По умолчанию

    Что касается моделей, то тут я пока остановился на Пентагоне со Скорпионом (и то у Скорпиона неверная тактовка, как мне пишут). Будет время (и место) - доведу до ума, и прочие модели и видеорежимы и hdd, и TR-DOS. А пока что воюю с компиляторами. Сейчас ZXAsm, потом возвращаюсь к Паскалю. Надолго это.
    Последнюю версию EmuZWin (2.7) можно получить по этой ссылке, а "официальная" страница с описанием здесь. Если что-то не пашет, берите там же версии 2.6 или старше. [B]

Страница 4 из 7 ПерваяПервая 1234567 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Похожие темы

  1. Новая версия EmuZWin
    от Vladimir Kladov в разделе Эмуляторы
    Ответов: 217
    Последнее: 09.05.2018, 20:32
  2. Вышел EmuZWin v2.6 release 1.0 но ...
    от Paul Pavlov в разделе Эмуляторы
    Ответов: 32
    Последнее: 15.08.2005, 18:09
  3. помогите
    от scl^mc в разделе Музыка
    Ответов: 3
    Последнее: 06.05.2005, 17:01
  4. Помогите!!!
    от Dr.Lion/RSM в разделе Форум
    Ответов: 2
    Последнее: 21.04.2005, 22:15

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •