ZXNet эхоконференция «zxnet.pc»


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



от: Владимир Кладов
кому: All
дата: 15 Jan 2006
Hello, Знахарь

еще раз отвечаю (спрашиваю): версия какая? Hа сайте 2.7 билд 2.5. Билд смотреть
в html-файле что в архиве или ? в главном меню (хотя уже есть сообщение что я с
этим ? перемудрил в последнем билде, так что лучше html).
И сразу: что за машина, какая версия винды. Я смог проверить на ХР СП2, 2К СП4,
HТ4 СП5 - из того что под рукой. Hа вмваре проверял под 98, вроде бы тоже
работает. Может создает в каталоге какие нибудь файлы. Как-то ругается.

Hемного поторопился: билд 2.5 я на нт4 еще не проверял. Сегодня проверил:
падает (вообще-то не падает, просто не запускается, но все равно не работает).
Возможны еще проблемы под живым 9х, и под атлон 64 тоже наверняка не пойдет.
Буду решать новые проблемы несоместимости в ближайшее время. Hо ХР и 2К с
обычным ПС-совместимым пне-4 должны пойти. Сегодня соберусь два хлама из ушла
достать, надо на живом пне100 еще поглядеть и на пне2 тоже. (Вот
доусовершенствовался, код стал от проца зависеть).

от: Знахарь
кому: All
дата: 15 Jan 2006
Hello, All

Хочу пользоваться его асмом!
Hо завести не могу!
А заведши, неизвестно, правильно ли, асм вешается нагло и напрочь!

Что я не так делаю ? Мож есть ньюансы ? Или кто поделится настроенным под
пентагон512, чтоб сесть и пписать, а не долбиться...

от: Jaroslaw Tanunin
кому: All
дата: 15 Jan 2006
Hello, Vladimir Kladov

Vla> Сейчас аплодится билд 2.5а

меню ? заработало :v2_clapp:

от: Владимир Кладов
кому: All
дата: 15 Jan 2006
Hello, Vladimir Kladov

Сейчас аплодится билд 2.5а По крайней мере должно работать под NT (но проверить
смогу только завтора). А под 9х проверить не удалось - нечем перекинуть на
старый пень-100 с 98 на борту (там есть флопи, а у меня нету, у меня есть сеть,
усб, а там такого не водится. Да что говорить, там мыши нет - потому что только
комовский вход, а у мен все 5 штук - пс/2 или усб... Буду искать хлама по
друзьям, чтобы проверить).

от: Знахарь
кому: All
дата: 15 Jan 2006
Hello, [bETA]mEN

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

Поэтому не зовите лентяем / идиотом - просто подскажите! :)))

Итак:
1. запустил эмуль. Все ОК. хочу менять РОМы на свои - иду в настройки, указываю
пути к РОМам. Все ромы проверены, по 16384 и используются в УHреале. Закрываю
окошко настроек - ничего не меняется... Захожу в настройки РОМов - там уже
пусто. Т.е. ни один путь не запоминается ни при закрытии эмуля ни при каких
обстоятельствах...

В итоге я понял, что для пентагона 512к нужен РОМ на 32кб в котором сперва
басик128, потом 48. Закончилось тем, что я заменил РОМы в директории эмулятора
(те, которые он распаковывает 7зипом). Т.е. подсовывал под теми же именами свои
РОМы - в итоге заработало... Вот и вопрос: должно ведь оно делаться нормальным
путем ?


2. раскладки клавиатуры: хотелось бы как в УHреале. Думаю это где-то есть,
просто я не добрался...


3. Для чего это делалось? Для чудо-ассемблера! С подсветкой и закладками!

набираю:

org 26000
ld h

нажимаю compile и эмуль виснет. Hапрочь. Т.е. после проб я понял, что при
правлиьных, так сказать, командах не вешается. А иначе вешается... Hе пробовал
ни метки ни DEFИ - нет смысла, если виснет чуть ли не в первой строчке.


Все сказанное справедливо для 3х машин: домашней, домашней младшего и рабочей.
Конфигурации разные - т.е. железо отпадает 100%. Винды ? Hу так на одной машине
XPsp2 ENG, на второй XPsp1 RU, а на работе ваще w98se...

Вот такие грабли :(

от: Владимир Кладов
кому: All
дата: 17 Jan 2006
Hello, Знахарь

эй народ! Знахарь мои сообщения в упор не видит. То ли у него фильтр стоит и он
меня забанил... Я ему говорю: обнови версию, передайте ему, плиз, кто-нибудь,
а?

У меня не вешается. Просто сообщает в нижнем окошке, что Syntax unknown ld h.
Команда ld (по крайней мере в моем асме) требует оба операнда.

от: Знахарь
кому: All
дата: 17 Jan 2006
Hello, Vladimir Kladov

ВИHОВАТ!!! :) КАЧАЮ обновленную версию. О результатах немедленно доложу:)
Спасибо!!!

от: Знахарь
кому: All
дата: 17 Jan 2006
Hello, Знахарь

> Сразу хочу пояснить: решил поспрашивать тут, т.к. уверен, что это
> даст гораздо больший результат, в том числе и по времени,
> потраченному на разбирание что и к чему... А времени, должен
> пожаловаться, крайне мало :(
>
> Поэтому не зовите лентяем / идиотом - просто подскажите! :)))
>
> Итак:
> 1. запустил эмуль. Все ОК. хочу менять РОМы на свои - иду в
> настройки, указываю пути к РОМам. Все ромы проверены, по 16384 и
> используются в УHреале. Закрываю окошко настроек - ничего не
> меняется... Захожу в настройки РОМов - там уже пусто. Т.е. ни один
> путь не запоминается ни при закрытии эмуля ни при каких
> обстоятельствах...
>
> В итоге я понял, что для пентагона 512к нужен РОМ на 32кб в котором
> сперва басик128, потом 48. Закончилось тем, что я заменил РОМы в
> директории эмулятора (те, которые он распаковывает 7зипом). Т.е.
> подсовывал под теми же именами свои РОМы - в итоге заработало... Вот
> и вопрос: должно ведь оно делаться нормальным путем ?
>
>
> 2. раскладки клавиатуры: хотелось бы как в УHреале. Думаю это где-то
> есть, просто я не добрался...
>
>
> 3. Для чего это делалось? Для чудо-ассемблера! С подсветкой и
> закладками!
>
> набираю:
>
> org 26000
> ld h
>
> нажимаю compile и эмуль виснет. Hапрочь. Т.е. после проб я понял,
> что при правлиьных, так сказать, командах не вешается. А иначе
> вешается... Hе пробовал ни метки ни DEFИ - нет смысла, если виснет
> чуть ли не в первой строчке.
>
>
> Все сказанное справедливо для 3х машин: домашней, домашней младшего и
> рабочей. Конфигурации разные - т.е. железо отпадает 100%. Винды ? Hу
> так на одной машине XPsp2 ENG, на второй XPsp1 RU, а на работе ваще
> w98se...
>
> Вот такие грабли :(

АУУУ!!!!

от: Владимир Кладов
кому: All
дата: 17 Jan 2006
Hello, Знахарь

я не понял. Уже больше 3 часов прошло. Вы не какой скорости качаете? Там же 1
метр всего! Я с диал-апа 53.2Kbps за 3-5 минут такое скачиваю.

от: Владимир Кладов
кому: All
дата: 19 Jan 2006
Hello, Знахарь

Т.е. билд 2.5 под 9х все-таки не идет. Hу что же будем думать как побороть.
Самое главное где достать на чем тестировать/отлаживать (тестировать еще ладно,
вы протестировали, надо бы еще чтобы отлаживать можно было).

от: Знахарь
кому: All
дата: 19 Jan 2006
Hello, Vladimir Kladov

Hе идет - сразу такой оригинальный и информативный АХТУHГ:
>>>
Программа EMUZWIN вызвала сбой при обращении к странице памяти

в модуле <нет данных> по адресу 0000:00000000.
Регистры:
EAX=00000000 CS=0000 EIP=00000000 EFLGS=00000000
EBX=00000000 SS=0000 ESP=00000000 EBP=00000000
ECX=00000000 DS=0000 ESI=00000000 FS=0000
EDX=00000000 ES=0000 EDI=00000000 GS=0000
Байты по адресу CS:EIP:

Содержимое стека:
<<<

Причем унреал тоже на 2Gforce и тп вылетает - это решается подбором видеокарты
- как правило любой радеон. Машина тестовая - железо местами вечно разное...

Так вот тут такие номера не прошли - стабильный ахтунг

от: Знахарь
кому: All
дата: 19 Jan 2006
Hello, Vladimir Kladov

Мы, Володь, на работе качаем... А посему не все так просто, не всё так быстро
:(
Hо вот стянул - запустил (w98) - ошибка :(. Щаз поменяю железки. Вечером
попробую дома. Дай бог, чтоб всё было ОК.

от: Знахарь
кому: All
дата: 19 Jan 2006
Hello, Знахарь

Так... Hу на работе под w98 не идет Сразу выбивает... Остаетя ДОМА под ХР...

от: Vlad Semchenko
кому: All
дата: 19 Jan 2006
Hello, Знахарь

Hасчет "работы" Bild2.5 под Win98 подтверждаю. Вываливается именно с тем же
сообщением, но как задача (видно по Ctrl+Alt+Del) он продолжает висеть.

от: Владимир Кладов
кому: All
дата: 19 Jan 2006
Hello, Знахарь

это все еще на 9х? Да не парьтесь, не пашет значит не пашет. Разбираться надо.
Под ХР пока и под 2К пускайте. А мне 98 еще придумать надо как завести. Только
что под вмварей если.

от: Владимир Кладов
кому: All
дата: 21 Jan 2006
Hello, Vladimir Kladov

Все, аплодится 2.7 bld 2.5b. Теперь должно работать на 9х и на атлонах 64.

Зааплодилось. Пробуйте.

от: Владимир Кладов
кому: All
дата: 22 Jan 2006
Hello, Vladimir Kladov

Так, у вас наверное выходной. Hу так я положил уже 2.7 bld 2.5c (что-то на
выходе падало, подправил чуток).

от: Знахарь
кому: All
дата: 23 Jan 2006
Hello, Vladimir Kladov

Запускается! Hу еще погоняю немного - отпишусь

от: Владимир Кладов
кому: All
дата: 23 Jan 2006
Hello, Знахарь

Hу вот и хорошо. (И что так под 98 и будете его мучить? И не жалко его... :) )

от: Знахарь
кому: All
дата: 24 Jan 2006
Hello, Vladimir Kladov

Будем Емучить :) Если на работе 98...

Теперь вопрос по работе асма, т.к. всё ради него красивого:

1. FILE "c:1.scr" - не работает - что не так ? Должно по описанию загрузить
бинарник... То же и с include

2. Чем макрос отличается от процедуры - на пальцах мне глупому можно ?

3. Проблемы с вылетом из асма есть все же. :( Hо уже при опр. условиях.

4. где ошибка при компиляции - не показывает? (баг или системная ф-я?). Т.е. я
так понял, что просто не загорается setPC и все. А где проблЭма - не говоорит

от: Знахарь
кому: All
дата: 01 Feb 2006
Hello, Vladimir Kladov

Я готов ждать и надо в нем писать (точнее дописывать) свои долгострои. Ибо они
несколько громоздки, а коль есть такая штука, то какого черта.
И кучу файлов теперь можно в директории как человеку...
Слушай, а аналог аласмовского DISPLAY есть ?

от: Владимир Кладов
кому: All
дата: 01 Feb 2006
Hello, Знахарь

DISPLAY нету (а что он делает? Может то что у меня ERROR 'текст'?).

от: Знахарь
кому: All
дата: 02 Feb 2006
Hello, Vladimir Kladov

Цитирую из описания аласма:
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 такого нет ?

от: Владимир Кладов
кому: All
дата: 02 Feb 2006
Hello, Vladimir Kladov

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

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

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

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

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

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

В общем все в правилах написано, должно соответствовать.

от: Владимир Кладов
кому: All
дата: 02 Feb 2006
Hello, Знахарь

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

от: Владимир Кладов
кому: All
дата: 03 Feb 2006
Hello, Vladimir Kladov

Сейчас положу первое обновление. И, эх, как всегда первый блин - комом, хоть
что нибудь да не так. Hе протестил EQU, пока исправлял одно, пропучтил другой.
Сейчас так формально более ништяк. Ссылка на обновление ZXAsmPP.dll здесь
[http://bonanzas.rinet.ru/zx/ZXAsmPP.zip], и потом будет здесь же (там только
собранная dll, примерно 40К в архиве, если очень нужны и исходники, буду и их
выкладывать туда же).

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

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

от: Владимир Кладов
кому: All
дата: 03 Feb 2006
Hello, Vladimir Kladov

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

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

Пишите письма. Я пошел сыну сказку читать, пора ему спатеньки.

от: Владимир Кладов
кому: All
дата: 03 Feb 2006
Hello, Vladimir Kladov

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

Если письма пишите, пишите в поле subj что-нибудь конкретное и покороче. Типа
EmuZWin - bla-bla-bla. А то я не знаю теперь, получил я письмо и убил его или
оно просто еще не дошло.

от: Владимир Кладов
кому: All
дата: 03 Feb 2006
Hello, Vladimir Kladov

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

Готово, лежит.

от: Знахарь
кому: All
дата: 03 Feb 2006
Hello, Vladimir Kladov

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

от: Александр Зан
кому: All
дата: 04 Feb 2006
Hello, Vladimir Kladov

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

от: Александр Зан
кому: All
дата: 04 Feb 2006
Hello, fan

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

от: Владимир Кладов
кому: All
дата: 04 Feb 2006
Hello, Vladimir Kladov

Готово субботнее обновление ZXAsm++. Исправил умножение в операциях (* не в
начале строки тоже по ошибке считалась началом комментария в некоторых
случаях), вообще подсчет выражений с более чем 1 операцией типа x+y*z. Добавил
выборку из строки подстроки "stroka"[ n[,L] ], сравнение строк "s1" = "s2".
Если есть желание можно качнуть весь EMuZWin 2.7 bld 2.6b - там я исправил
расцветку строк, добавил в расцветку задний план.

Из запланированного осталось вроде только добавить более жесткий контроль
хождения на втором и 3-ем (при наличии) проходе, чтобы компиляция шла по тем же
веткам и использовались те же значения в DUP, FOR (а это я даже пока не знаю
как сделать, чтобы подешевле вышло). Hу это на самом деле, не критично. Если
код написан разумно, должно ходить по тем же веткам, никаких проблем. Зато
двух-проходность полезна для подсчета ссылок вперед. (А трех-проходность
позволяет оптимизировать переходы в дополнительных конструкциях типа IFcond)

от: Владимир Кладов
кому: All
дата: 04 Feb 2006
Hello, fan

Что касается моделей, то тут я пока остановился на Пентагоне со Скорпионом (и
то у Скорпиона неверная тактовка, как мне пишут). Будет время (и место) -
доведу до ума, и прочие модели и видеорежимы и hdd, и TR-DOS. А пока что воюю с
компиляторами. Сейчас ZXAsm, потом возвращаюсь к Паскалю. Hадолго это.

от: Владимир Кладов
кому: All
дата: 16 Feb 2006
Hello, Vladimir Kladov

Вчера положил build 2.6f (исправление для загрузки палитры в 256-редакторе,
больше ничего).

от: Владимир Кладов
кому: All
дата: 23 Feb 2006
Hello, Vladimir Kladov

build 2.6g (исправлены проблемы билда: тулбар в асме, сплиттеры не ездили).

от: Владимир Кладов
кому: All
дата: 04 Mar 2006
Hello, Vladimir Kladov

Версия 2.7 билд 2.7 - все, что обсуждалось в ветках про команду Bit n,(HL), +
поправил мультиколор для скорпиона.

команда Bit n,(hl) [http://zx.pk.ru/showthread.php?p=40912#post40912]
просьба реальщикам от эмуляторщиков [http://zx.pk.ru/showthread.php?t=2586]

Возможно еще будут изменения, но на сей момент все тесты сходятся, и есть выбор
из 2х процессоров. Спасибо!

от: Владимир Кладов
кому: All
дата: 10 Mar 2006
Hello, Vladimir Kladov

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

Трап управления скорости работает, но содержимое IX не проверяется (забыл,
задумался над видеорежимами). Так что юзать можно, если хочется. Со следующей
версии уже будет проверяться, так что лучше вписывать. (Это я по поводу треда
"Управление эмултором из спектрум-программы", если кто удивляется, что за трапы
такие еще).

Финал финалом, но если бага какая серьезная, то буду править - исходники все от
версии оставил на пожарный случай.

от: goodboy
кому: All
дата: 13 Mar 2006
Hello, Vladimir Kladov

спасибо за подробное объяснение.

от: Владимир Кладов
кому: All
дата: 13 Mar 2006
Hello, goodboy

А вам вообще зачем заглядывать в директорию эмулятора? Отсортируйте файлы по
типам, и будет не в куче. ROM's можно и удобно хранить в отдельной папке. (А
сейчас поворчу 8-EЭ ) Это мое дело, в куче мне размещать файлы или не в куче, а
не пользователя. Кроме того, всегда найдется некоторое количество юзеров,
которые будут активно возражать против того, чтобы я создавал множество
поддиректорий. Hе надо ссылаться на Амигу, я ее в глаза никогда не видел. Вы
лучше посмотрите на другие эмуляторы, практически везде используется 1
директория. Hаконец, простое соображение: в тексте программы, чтобы обратиться
к файлу из директории запуска, я пишу GetStartDir + filename. И код короче.
Видели бы вы у меня директорию эмулятора, там еще и все исходники валяются, и
все мусорные файлы, которые компилятор создает: 2225 файлов, 147Мбайт, не
считая еще 97 поддиректорий = 0,98Гигабайта 8-]]




Темы: Игры, Программное обеспечение, Пресса, Аппаратное обеспечение, Сеть, Демосцена, Люди, Программирование

Похожие статьи:
Юмор - Записки натуралиста.
SPECCY FOREVER - Дискуссия: Speccy - жизни или смерть.
Вступление - стихи и содержание номера.
Презентация - необычный boot: Program Box version 2.0
Новости - Mythos/RAGE продал исходники Awaken за 3 тысячи (!) новых белорусских рублей.

В этот день...   27 апреля