PDA

Просмотр полной версии : EmuZWin hack edition



DenisGrachev
13.09.2017, 08:40
Привет, друзья!

Не секрет что мне очень нравится встроенный в EmuZWin ассемблер. Он очень дружелюбен к новичкам и прощает некоторые огрехи :)
Но что меня больше всего в нём раздражает так это невозможность быстро сделать билд. Поэтому я заморочился, взял исходники асма, подшаманил exe самого эмуля и сделал новую хакнутую версию!

http://www.retrosouls.net/zx/pic1.png



Что изменилось:


!Исправлены глюки отображения окна эмуля

исправлена компиляция OTIR

добавлены 4 новые директивы асма(PAGE,SAVEBIN,RUN,ALIGN), ради этого пришлось пожертвовать подсветкой ENDPROC,END,CTEXT и STEP. Эти команды по прежнему воспринимаются асмом, просто не подсвечиваются!


Новые токены:

PAGE pageNum

подключает нужную нам страницу в верхнее окно.
Команду не стоит смешивать со старым стилем вида ORG RAM 4,49152! Либо пользуетесь PAGE либо по-старинке!

Примеры:


page 4
org 49152
наш код в 4-ю страницу


SAVEBIN filename,startAddress,size

Сохраняет содержимое памяти в файл на диск

Примеры:


savebin "code.bin",32768,16384

page 4
savebin "page4.bin",49152,16384



run filename

запускает внешнюю программу



;тут всё просто, запускаем батник
run "!build.bat"


ALIGN N

После это команды код пойдёт ближайшего с адреса кратного N

Примеры:


align 256
;дальше код с адреса кратного 256



В подпапочке !tests я положил несколько простых тестов.
Также там лежит быстрый *****тест со всеми новыми командами.Можно им пользоваться как примером по новым командам.
Во все страницы запихана музыка, переключать можно кнопками 1.2.3.4.5.6 и есть автосборка trd и tap!

Всё очень грубо и не сильно оттестировано, поэтому багрепорты приветствуются!

Чтобы всё работало правильно нужно прямо открыть файл исходника в асме, если вы только запустили эмуль и там открыт исходник то все файловые операции будут идти в корне exe эмулятора. Это классическая бага/фишка эмуля которая даже рушит все INCLUDE :)

Скачать (https://www.dropbox.com/s/2vtnixfoayw69sk/emuzwinhack1.zip?dl=0)

DenisGrachev
13.09.2017, 11:48
-=-

Bedazzle
13.09.2017, 15:56
Боярин :) это ж просто радость какая!
Можно ли надеяться на правку разных мелких и не очень косяков в дальнейшем?

DenisGrachev
13.09.2017, 17:22
Боярин :) это ж просто радость какая!
Можно ли надеяться на правку разных мелких и не очень косяков в дальнейшем?

Увы, чтобы править косяки эмулятора нужны его исходники. А Владимира Кладова еще и найти нужно и уговорить :) Я бы взялся попробовать, чем чёрт не шутит. Может и пофиксили бы.

Я правлю тока асм, его исходники открыты. Я там еще savebin и page сделал, как в сджасме, но там мелкий косяк вылез, как поправлю то обновлю пост!

ZX_NOVOSIB
13.09.2017, 17:47
Владимира Кладова еще и найти нужно
Попроси ААА, он заглянет в сверхсекретную кгб-шную базу данных и мигом выдаст тебе всю инфу о Кладове.

Bedazzle
13.09.2017, 17:51
Увы, чтобы править косяки эмулятора нужны его исходники.

ну мне в глаза попало
"взял исходники асма"


А Владимира Кладова еще и найти нужно и уговорить :) Я бы взялся попробовать, чем чёрт не шутит. Может и пофиксили бы.

Давайте всем миром поищем? Всяко кто-нибудь найдётся, что даже ногами дойти может.

DenisGrachev
13.09.2017, 17:59
Давайте всем миром поищем? Всяко кто-нибудь найдётся, что даже ногами дойти может.

Ну я написал во все почты что нашёл :) Я бы и ногами дошёл, город то один, вот только куда идти :)))


Попроси ААА

А кто это?

Bedazzle
13.09.2017, 18:15
А кто это?

Так понимаю, речь про него (https://zxdemos.ru/).

OrionExt
13.09.2017, 18:18
Тут (http://zx-pk.ru/threads/25130-emuzwin-v-open-source.html?p=803931&viewfull=1#post803931), была попытка достучаться, но.. безуспешно.

DenisGrachev
13.09.2017, 18:28
Я и без делегации, допустим, выложить могу. Например, на Source Forge. Но если кто-то думает, что сумеет в этом всём разобраться за приемлемое время/потратив приемлемо мало усилий, то, мягко говоря, он слегка ошибается. Я бы сейчас сам не рискнул влезть в этот код, и начать там чего-то править.

Не вижу тут 100%-го отказа :) Владимир, если вы это читаете то нам очень-очень нужно! А толпой мы потихоньку всё там пофиксим, мы очень упёртые и трудолюбивые. Тем более фиксить то там в основном интерфейсные штуки надо.

Bedazzle
13.09.2017, 22:04
6 лет назад в исходниках отказали. Писал на почту, которая на kolmck.net (https://e.mail.ru/compose?To=vk@kolmck.net)

Такое ощущение, что утеряны полностью или частично.

OrionExt
13.09.2017, 22:10
Не стройте конспирологий. Просто афтор зажал в силу….. Вот и все. А может ему стыдно. Натырил чего в коде. Это дело темное. А теперь… блин как это всем показать=)Просто афтор зажал в силу….. Вот и все.

goodboy
13.09.2017, 22:14
Кладов тут внезапно появлялся (что-то связанное с астрономией)
возможно какие-то контакты есть в его версиях элиты

базы данных говорят что скорее всего он КЛАДОВ ВЛАДИМИР ЛЕОНИДОВИЧ 1966
ЖЕЛЕЗНОДОРОЖНЫЙ / ШАМШУРИНА
КАЛИНИНСКИЙ / НАРОДНАЯ
что сиё значит (районы?) мне неведомо

OrionExt
13.09.2017, 22:31
Было бы чего выкладывать афтору. Я вот MSX-blue-Орион-Про. Вот не выложу. А тут чего то не понятное:confused:

- - - Добавлено - - -

Mожет тырил чего-то а теперь. Хотя в то врямя ой как тяжко было с эмуляцией.

Black Cat / Era CG
13.09.2017, 22:45
что сиё значит (районы?) мне неведомо
район/улица

NEO SPECTRUMAN
14.09.2017, 00:57
Пофиксь Otir (компилится как outd)

- - - Добавлено - - -


Увы, чтобы править косяки эмулятора нужны его исходники.
да там в одном асьме только сколько косяков

добавь подтверждение для new file
сколько он исходников убил...

DenisGrachev
14.09.2017, 04:30
ЖЕЛЕЗНОДОРОЖНЫЙ / ШАМШУРИНА
КАЛИНИНСКИЙ / НАРОДНАЯ
что сиё значит (районы?) мне неведомо

На шамшурина он уже не живёт, так в его тестовой демке написано было, для асма :)


да там в одном асьме только сколько косяков
добавь подтверждение для new file
сколько он исходников убил...

Это да. Но я неправильно выразился, есть исходники только той части которая разбирает текст и делает из него машкод :) Сами формы асма это всё у эмуля в исходниках. Из-за этого я и мучаюсь с подсветкой новых команд.


Пофиксь Otir (компилится как outd)

А вот это легко, исправил EDAB на EDB3 :) Добью savebin и выложу всё разом!

DenisGrachev
14.09.2017, 08:04
Новая версия доступна по той-же ссылке! Первый пост обновил.



Исправлена компиляция OTIR

Добавлена PAGE для компиляции в нужную страницу

SAVEBIN теперь работает более дружелюбно


Скачать (http://www.retrosouls.net/zx/emuzwinhack.zip)


Сделал быстрый *****тест со всеми новыми командами - вроде всё работает верно. Прикрепил к посту.Можно им пользоваться как примером по новым командам.
Во все страницы запихана музыка, переключать можно кнопками 1.2.3.4.5.6
Сделал по быстрому сборку trd и tap!

Прямо самому нравится, жмёшь compile и у тебя в папке с исходником появляются готовые тап и трд! Если не нужен дебагер то можно окно эмуля вообще спрятать под асмом и тестить всё в другом эмуле :)))

Пока всё! Лично мне больше ничего в асме не надо :)

Bedazzle
14.09.2017, 10:03
Пока всё! Лично мне больше ничего в асме не надо :)

А напомните, макросы там есть?

DenisGrachev
14.09.2017, 10:51
А напомните, макросы там есть?

Я ими не пользуюсь :) Попробовал простой макрос без параметров - работает:



org 32768

ADD_HL_A

jp $

ADD_HL_A MACRO
ADD A,L
JR NC,_hup
INC H
_hup
LD L,A
ENDM



Вообще бы нам бы всем дописать хелп к асму примерами, кто что расшифровать смог. В асме есть много всего, но в хелпе разобраться не только лишь все могут :))))

- - - Updated - - -

Народ, а скачайте кто-нибудь по той же ссылке и попробуйте запустить на новых виндах без всяких режимов совместимости! У меня на 7-ке и 8-ке 64 битной работает теперь просто так!
Мучал я его и возможно что пофиксил случайно баги отображения :)

Black Cat / Era CG
14.09.2017, 11:02
Народ, а скачайте кто-нибудь по той же ссылке и попробуйте запустить на новых виндах без всяких режимов совместимости! У меня на 7-ке
Работает :) 7-64

- - - Добавлено - - -

Запускается, после сброса по крайней мере.

Bedazzle
14.09.2017, 11:03
Народ, а скачайте кто-нибудь по той же ссылке и попробуйте запустить на новых виндах без всяких режимов совместимости! У меня на 7-ке и 8-ке 64 битной работает теперь просто так!
Мучал я его и возможно что пофиксил случайно баги отображения :)

Вчера был кривочёрный, как и раньше.
А сейчас красиво:

https://i.imgur.com/tPx7lah.png

DenisGrachev
14.09.2017, 11:05
Запускается, после сброса по крайней мере.

Надо чтобы элементы интерфейса отображались нормально, раньше всё чёрным заливало панельки...

Во, как у Bedazzle это нормуль !!!

Bedazzle
14.09.2017, 11:06
Вообще бы нам бы всем дописать хелп к асму примерами, кто что расшифровать смог. В асме есть много всего, но в хелпе разобраться не только лишь все могут :))))

Я очень много времени потерял, когда не мог понять, куда пишутся ошибки компиляции, искал глазами. :( Пока добрые люди не подсказали, что внизу есть панелька, только она почему-то спрятана... Вытянул наверх, и вздохнул с облегчением. :)

Black Cat / Era CG
14.09.2017, 11:06
Нормально-нормально все. Как на скрине выше. Я знаю, как было раньше. Щас норм.

Spectramine
14.09.2017, 13:16
Да, Win 7 x86 - глюк отрисовки кнопок тулбара ушел.

DenisGrachev
14.09.2017, 14:18
Проверил дома да 10-ке полёт нормальный. Будем считать что всё отлично работает :)

Столько лет страдали, а тут Миракл :)

Black Cat / Era CG
14.09.2017, 15:20
Какой-то ты неправильный. Все обычно случайно что-нибудь ломают, а ты пофиксил. :v2_conf3::v2_jawdr::v2_crazy::v2_clap2:

DenisGrachev
14.09.2017, 15:54
Какой-то ты неправильный. Все обычно случайно что-нибудь ломают, а ты пофиксил. :v2_conf3::v2_jawdr::v2_crazy::v2_clap2:
Ну, не совсем случайно то :) Дело было так:

Сидел я и смотрел грустным взором на папку с файлами и взгяд мой упал на файл manifest и всё заверте... Почитал умных статей про эти файлы, вздохнул и удалил его к херам :))))

Bedazzle
14.09.2017, 17:59
Кстати, была какая-то приблуда, чтобы дельфи формы ковырять внутри компиленого экзе (до того, как автор выложил сырцы Subtitle Workshop, так его получилось немного улучшить).
Вполне может быть, что в формах эмуля не только KOL, а и VCL, и что-то можно потрогать.

error
14.09.2017, 18:14
Кстати, была какая-то приблуда, чтобы дельфи формы ковырять внутри компиленого экзе (до того, как автор выложил сырцы Subtitle Workshop, так его получилось немного улучшить).
Вполне может быть, что в формах эмуля не только KOL, а и VCL, и что-то можно потрогать.

Нет, только KOL...
Жалко что автор не выкладывает исходники, я ему года два назад писал, тоже получил отказ :(

DenisGrachev
14.09.2017, 19:20
Кстати автор мне достаточно подробно и аргументированно написал почему не отдаёт исходники. Там куча крос зависимостей от других его разработок, которые развивались и после последней версии эмуля и чтобы восстановить рабочую среду тех лет нужно приличное количество времени, которого жалко. К тому же скорее всего и не скомпилится :)

NEO SPECTRUMAN
14.09.2017, 20:19
И все бы хорошо если бы не...


AegisLab
Troj.Gen!c
20170914


Baidu
Multi.Threats.InArchive
20170914


Comodo
UnclassifiedMalware
20170914


Cylance
Unsafe
20170914


Cyren
W32/KolWeb.A.gen!Eldorado
20170914


F-Prot
W32/KolWeb.A.gen!Eldorado
20170914


Sophos ML
heuristic
20170914


Jiangmin
Backdoor/Agent.bqxz
20170914


McAfee
Artemis!56AA333D44BF
20170914


Rising
Malware.Heuristic!ET#88% (rdm+:mzxYFIiH6vV)
20170914


TrendMicro-HouseCall
PAK_Generic.005
20170914


Webroot
W32.Malware.Gen
20170914



https://www.virustotal.com/ru/file/6eda89cdad9331d9ac950be224e8818b076e095a19f8d63ff7 25813467d2ca48/analysis/

DenisGrachev
14.09.2017, 20:26
И все бы хорошо если бы не...


AegisLab
Troj.Gen!c
20170914


Baidu
Multi.Threats.InArchive
20170914


Comodo
UnclassifiedMalware
20170914


Cylance
Unsafe
20170914


Cyren
W32/KolWeb.A.gen!Eldorado
20170914


F-Prot
W32/KolWeb.A.gen!Eldorado
20170914


Sophos ML
heuristic
20170914


Jiangmin
Backdoor/Agent.bqxz
20170914


McAfee
Artemis!56AA333D44BF
20170914


Rising
Malware.Heuristic!ET#88% (rdm+:mzxYFIiH6vV)
20170914


TrendMicro-HouseCall
PAK_Generic.005
20170914


Webroot
W32.Malware.Gen
20170914



https://www.virustotal.com/ru/file/6eda89cdad9331d9ac950be224e8818b076e095a19f8d63ff7 25813467d2ca48/analysis/

Жуть какая :) у меня ни один антивирус не ругается, либо на моём хостинге фигня, либо перебздел твой сайт :)

NEO SPECTRUMAN
14.09.2017, 20:29
Предыдущий просто детектился как подозрительный файл
а эта сборка сразу же полетела в карантин...

хотя названия антивирусов
почти не вызывают никакого доверия...

Shiny
14.09.2017, 20:35
Отдай сандбоксу что ли. Понаделали сигнатур для вирусов.

DenisGrachev
14.09.2017, 20:43
Отдай сандбоксу что ли. Понаделали сигнатур для вирусов.

Можно и так ) накомпилила мне делфя траюнов )))
Если серьёзно то из всех этих антивирей тока байду знаю и то её постоянно удалить саму не могут, всё по китайски!

Возможно еще дело в том что старый ехе был сжат upx, а тот что у меня не сжат.

Bedazzle
14.09.2017, 22:27
И все бы хорошо если бы не...


Дельфи + UPX - детектят как трояны. Ничего удивительного, от большого ума можно всяких монстров найти.

- - - Добавлено - - -


Если серьёзно то из всех этих антивирей тока байду знаю

Комодо, Макафи и Ф-прот же :)

NEO SPECTRUMAN
14.09.2017, 23:03
Кстати автор мне достаточно подробно и аргументированно написал почему
да забить уже на этот emuzwin

прикрутить бы его асм к другому "живому" эмулю

error
15.09.2017, 02:13
Кстати автор мне достаточно подробно и аргументированно написал почему не отдаёт исходники. Там куча крос зависимостей от других его разработок, которые развивались и после последней версии эмуля и чтобы восстановить рабочую среду тех лет нужно приличное количество времени, которого жалко. К тому же скорее всего и не скомпилится :)
Окей, автор не хочет заморачиваться - но выложить пусть и не компилирующийся проект можно же?
Мне вот не пофиг на этот эмулятор, я его считаю лучшим, хоть падения на 10ке и интерфейс пофиксить можно было бы :(

Spectramine
15.09.2017, 02:32
И все бы хорошо если бы не...


AegisLab
Troj.Gen!c
20170914


Baidu
Multi.Threats.InArchive
20170914


Comodo
UnclassifiedMalware
20170914


Cylance
Unsafe
20170914


Cyren
W32/KolWeb.A.gen!Eldorado
20170914


F-Prot
W32/KolWeb.A.gen!Eldorado
20170914


Sophos ML
heuristic
20170914


Jiangmin
Backdoor/Agent.bqxz
20170914


McAfee
Artemis!56AA333D44BF
20170914


Rising
Malware.Heuristic!ET#88% (rdm+:mzxYFIiH6vV)
20170914


TrendMicro-HouseCall
PAK_Generic.005
20170914


Webroot
W32.Malware.Gen
20170914



https://www.virustotal.com/ru/file/6eda89cdad9331d9ac950be224e8818b076e095a19f8d63ff7 25813467d2ca48/analysis/

А как насчет оригинального нехакнутого EmuzWin?

DenisGrachev
15.09.2017, 05:52
Окей, автор не хочет заморачиваться - но выложить пусть и не компилирующийся проект можно же?
Мне вот не пофиг на этот эмулятор, я его считаю лучшим, хоть падения на 10ке и интерфейс пофиксить можно было бы

Ценность не компилируемого проекта к нулю стремится :) Вроде не заметил я вчера падений на 10-ке, но может не сильно активно пользовался, хз.
Мне нравится идея что всё в одном, эмуль+асм+дебагер, поэтому и вожусь с ним. В принципе, сейчас меня всё устраивает. Подумываю как бы обратно не перелезть с sjasmplus.


прикрутить бы его асм к другому "живому" эмулю

Тогда уж лучше sjasmplus пробовать сразу. Можно посмотреть в сторону zxmak, как вариант, или попросить его автора :)

- - - Updated - - -

И ещё одно небольшое обновление:

Добавлен ALIGN для выравнивания по кратному адресу

Теперь можно так:

align 256
и погнали код в адрес кратный 256 :)

Shiny
15.09.2017, 07:08
да забить уже на этот emuzwin

прикрутить бы его асм к другому "живому" эмулю

Дык давно забито. sjasm выплюнет снапшот, спектакулатор откроет и запустит. остальное - дело техники.

Bedazzle
15.09.2017, 07:12
savebin "code.bin",start,65535-start

тут точно ошибки в примере нет?
если старт=0, то сохранится 65535 байт
если старт=1, то сохранится 65534
если старт=65535, то ...

DenisGrachev
15.09.2017, 07:17
savebin "code.bin",start,65535-start

тут точно ошибки в примере нет?
если старт=0, то сохранится 65535 байт
если старт=1, то сохранится 65534
если старт=65535, то ...

И где тут ошибка? :) Цифра с потолка взята просто. Кстати подразумевается что без рома сохраняется, поэтому только с 16384 и максимум 49152. Как мы в десятичные числа лихо переехали то :)


Дык давно забито. sjasm выплюнет снапшот, спектакулатор откроет и запустит. остальное - дело техники.

Да у нас просто дело привычки, я тоже спокойно с sjasm справляюсь :)
К сожалению если писать под классику 128к то снапшот звпустится только в режиме пентагона. Лучше сразу тапку собирать для таких дел

Shiny
15.09.2017, 08:29
Лучше сразу тапку собирать для таких дел

Банки щелкать слишком гиморно.


Кстати подразумевается что без рома сохраняется, поэтому только с 16384 и максимум 49152

ужясму наплевать на адреса, так удобнее SCL собирать - кректры там и прочее (:

DenisGrachev
15.09.2017, 09:02
ужясму наплевать на адреса, так удобнее SCL собирать - кректры там и прочее (:

Да, для ужасма вообще всё есть. Но, опять же, если писать под классику то бида. Нет дебагера с метками из асма. Ужасм конечно может экспортнуть метки, но загрузить их тока в анрил можно. А анрил для классики никак :) Тупик.

Black Cat / Era CG
15.09.2017, 09:12
Нет дебагера с метками из асма. Ужасм конечно может экспортнуть метки, но загрузить их тока в анрил можно.
Еще Xpeccy может ужасмометки есть.

Bedazzle
15.09.2017, 10:42
И где тут ошибка? :) Цифра с потолка взята просто. Кстати подразумевается что без рома сохраняется, поэтому только с 16384 и максимум 49152.

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

OrionExt
15.09.2017, 11:13
А почему не хотите посмотреть в сторону ZXSpin? Исходники в сеть выкладывали. И тоже без бубна с танцами его уже не скомпилировать.

Shiny
15.09.2017, 11:13
А анрил для классики никак

Это ***** годно для бордер-эффектов.

Bedazzle
15.09.2017, 13:37
А почему не хотите посмотреть в сторону ZXSpin? Исходники в сеть выкладывали. И тоже без бубна с танцами его уже не скомпилировать.

Зато на восе без проблем найти кто писал. :)

Но зато да, проблема найти потерянные куски модулей.



1. You need a copy of Borland Delphi 5 - ZXSpin will not build with any other version.
2. You'll have to accept that some modules only exist in .o form, as the source no longer exists.
3. You'll need copies of certain components for Delphi that no longer exist and for which I do not have permission to distribute - you'll need to find those on your own.
4. There are certain DLL files, such as Woody's IDE and u765 Dll, for which source is not available.
5. Since I can no longer even build ZXSpin, you're on your own compiling it. I don't have anything to do with it any longer.
6. The very latest version of the source is broken - it doesn't, for example, load tapes. (Though it does run, and I know why it doesn't load tapes).
7. I have no intention (or even the ability or tools) to fix anything. what you get is all I have.
8. We made modifications to Borland's own code which I cannot distribute to anyone. These modifications were to System.pas, which enabled parts of the UI to work properly.


hq2x16.obj, hq3x16.obj, hq4x16.obj - подозреваю, что это ресайз картинки.
с остальными вероятно, проблема

https://i.imgur.com/u3ne96u.png

Spectramine
15.09.2017, 14:27
Fuse открыт для модификации и наворотов, поддерживает кучу моделей, компилируется под всё, чем плох?

ZEman
15.09.2017, 14:43
а мне кажется лучше использовать Zxmak2 - очень хороший, качественный и точный эмулятор.
и исходники тоже открыты.

Shiny
15.09.2017, 15:47
Fuse открыт для модификации и наворотов, поддерживает кучу моделей, компилируется под всё, чем плох?
долбагер уродский

- - - Добавлено - - -


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

он с .Net вроде? сразу втопку.

Spectramine
15.09.2017, 16:21
долбагер уродский
Ну так переписать его.

Shiny
15.09.2017, 16:24
Ну так переписать его

И кто возьмется? Было бы неплохо сделать breakpoint по условию, которые мало эмуляторов поддерживают.

shurik-ua
15.09.2017, 16:45
С таким количеством энтузиазма скорее самому написать всё что хочется - чем разгребать код времён мамонтов )

DenisGrachev
16.09.2017, 10:18
Вообщем то я думаю что с Эмузвином будет по сложнее чем с zxspin даже. Буду потихоньку пытаться распутывать этот клубок в свободное от других проектов время :)
Повспоминаю делфи, освою KOL параллельно. Шансы есть :) KOL вообще открытием был для меня, всегда лепили всё стандартными компонентами в инсте :)))

http://www.retrosouls.net/zx/emz.png

Titus
16.09.2017, 10:33
Денис большое и полезное дело сделал)
EmuZWin весьма приятный во многих отношениях эмулятор, и хорошо, что нашелся человек, который шлифанул его неприятные косячки)

Bedazzle
16.09.2017, 12:23
Вообщем то я думаю что с Эмузвином будет по сложнее чем с zxspin даже.

Если что по мелочи надо (скиллы так себе), с удовольствием помогу.

Spectramine
16.09.2017, 14:26
Вообщем то я думаю что с Эмузвином будет по сложнее чем с zxspin даже. Буду потихоньку пытаться распутывать этот клубок в свободное от других проектов время :)
Повспоминаю делфи, освою KOL параллельно. Шансы есть :) KOL вообще открытием был для меня, всегда лепили всё стандартными компонентами в инсте :)))

http://www.retrosouls.net/zx/emz.png

Похоже, что автор EmuZWin таки поделился исходниками? Исключительно в частном порядке или другие желающие (я, например :) ) тоже могут ознакомиться?

DenisGrachev
16.09.2017, 16:03
Похоже, что автор EmuZWin таки поделился исходниками? Исключительно в частном порядке или другие желающие (я, например ) тоже могут ознакомиться?

Поделился! Но увы, с условием не распространять. Я дал слово, так что вот. Но хотелось бы помощи от всех кто сможет помочь, если я упрусь в тупик. Пока просто собираю нужные компоненты и сторонние либы, настраиваю среду и.т.п

ZX_NOVOSIB
16.09.2017, 17:32
Поделился!
:v2_dizzy_aaaaa:

Видимо не даром говорится "ты можешь достичь добрым словом и пистолетом большего, чем просто добрым словом" )))

Reobne
17.09.2017, 08:17
Поделился!
О! Как здорово, что проект разморозился! Надеюсь что удастся довести исходники до компиляимости!
Я-же находил кучу багов и недоделок.
0) Пересмотреть политику "текущего каталога" при открытиях файлов и сохранениях_как.
1) "быстрая загрузка с ленты" - ключ не сохраняется, и постоянно установлен при загрузке эмулятора.
2) При показе клавиатуры "alt+K" теряется фокус главного окна. Приходится мышкой тыкать в него.
3) При остановке на точке останова, фокус переходит к окну дебагера, если в это время давится кнопка на клавиатуре, то она залипает.
4) Не работают сложные условные точки останова. Либо игнорируются, либо крашится весь эмулятор.
5) Нельзя в листинге дебагера отключить вшитые системные метки.
6) Не работают точки останова в ПЗУ.
7) При дизассемблировании часто зависает окошечко "Плиз вайт".
8) Не хватает вариантов дизассемблирования, с подстановкой найденных меток.
9) В ассемблере форточка лога и в дебагере форточка дампа памяти, изначально должны быть видны.
A) В окне ассемблера предусмотреть ключ, чтобы при компиляции (F4) сразу запускалась программа по entrypoint.
B) При выключении режима мультиколлора, у меня часто крашился эмулятор.
С) При одновременном открытии нескольких экземпляров эмулятора, потом при их закрытии возникают сообщения о падении. Как-то надо это дело обрабатывать и чтобы в список последних открытых файлов всё открываемое попадало.
D) Sprite Finder неудобно двигать ползунки. Мало вариантов кодирования. Нет режима редактирования. :)
E) Вот я хочу написать плагин, чтобы при ассемблировании метки "Label128: ; Comment_128" комментарии сохранялись в метке, и в окне меток появился третий столбец с комментариями. Могу я сделать такой плагин? Как-то надо больше документаций по плагинам, какие можно написать, какие нельзя, больше примеров.

- - - Добавлено - - -

F) В дебагере, при пошаговой отладке (F7,F8) можно сделать ключ, чтобы изменения в экранной области сразу отражались в графике, а не ждали прохода луча.

Под словом "ключ" я понимаю какую нибудь фиксирующуюся кнопку или галочку.

DenisGrachev
17.09.2017, 09:40
Reobne, отличный список! Плагины это только savez80 и.т.п ими не внести изменения в сам эмуль. Я достаточно медленно буду разгребать, в приоритете у меня моя долгострой игра под спек ;)

Reobne
17.09.2017, 10:50
DenisGrachev, Я готов ждать вечно! :) Главное что дело движется. Исходник уже компилируется?

10) При открывании окошка "новый брекпоинт", фокус ввода должен быть в EditTextAddr1, и его содержимое должно быть выделено. По Enter окно должно закрыться с сохранением; по esc - без сохранения.
11) В дебагере, я редактирую AF, нажав TAB я хочу перейти к редактированию AF'; нажав вниз - к редактированию BC.
12) В дебагере листинг дизассемблера, правый клик мыши, я не хочу видеть меню настроек, оно на кнопке скрещенного молотка и гаечного ключа, тут я хочу видеть конкретно что можно сделать с данным адресом: поставить брейк, поставить брейк как(с окошком нового брейка), ввести ассемблерную команду, создать метку пользователя, добавить комментарий, скопировать адрес, скопировать ассемблерную команду, начать выполнение отсюда, начать дизассемблирование отсюда...
13) В редакторе ассемблера, окошко Find text, добавить категорию искомого: всё подряд, коментарии, некоментарии, метки, команды, числа...

Bedazzle
17.09.2017, 13:55
14) при открытом эмуляторе возникает проблема с браузерами (как минимум, у меня были стабильные проблемы с эксплорером)

Spectramine
17.09.2017, 14:54
14) при открытом эмуляторе возникает проблема с браузерами (как минимум, у меня были стабильные проблемы с эксплорером)

Это из-за флеша. С файрфоксом тоже проблемы. Правда, у файрфокса проблемы с флешем и без эмуля, но с эмулем - стабильные.

NEO SPECTRUMAN
17.09.2017, 23:02
3) При остановке на точке останова, фокус переходит к окну дебагера, если в это время давится кнопка на клавиатуре, то она залипает.
она залипает не токлько при использовании дебагера
стоит только "не правильно" кликнуть по любой кнопке\менюшке
и все....


A) В окне ассемблера предусмотреть ключ, чтобы при компиляции (F4) сразу запускалась программа по entrypoint.
а что она щас не запускается по entrypoint o_O?


F) В дебагере, при пошаговой отладке (F7,F8) можно сделать ключ, чтобы изменения в экранной области сразу отражались в графике, а не ждали прохода луча.
отключаешь эмуляцию мультиколора
и проблема решена
а в дебагере будет больше полезно 2 окна
содержимое видео памяти (можно даже несколько банок\окон или с ручной установкой адреса)
и содержимое экрана со всей построчной отрисовкой

- - - Добавлено - - -


12) В дебагере листинг дизассемблера
в дебагере листинг дизассемблера
при скролле в одну из сторон жутоко спотыкается и тормозит
по моему

Spectramine
17.09.2017, 23:39
15) не грузится Bomb Jack.

Reobne
18.09.2017, 10:41
а что она щас не запускается по entrypoint o_O?
Нет, не запускается, на паузе остаётся.
Если ты хочешь отлаживать-сохранять, то нужно на паузе.
Если хочешь смотреть получаемую картинку, или сразу начать играть, то нужно без паузы.

в дебагере листинг дизассемблера
при скролле в одну из сторон жутоко спотыкается и тормозит
Я уже привык, в этом есть логика. Когда мы спускаемся вниз, скроллинг идёт по командам. Поднимаемся вверх - побайтно. Чтоб сильно не тормозило, нажимаю PageUp.

Rubts0FF
18.09.2017, 19:39
А можно сделать правильную эмуляцию Tr-Dos, а то автор от этого отмахнулся. Дескать сколько там программ, FUT да ZAsm.

vlad
18.09.2017, 21:12
Было-бы не плохо сделать нормальную поддержку режима Spec256, эмуль разваливается на глазах, невозможно раскрасить даже простенькую игру, а так хотелось доделать (https://www.youtube.com/watch?v=5JCH4aDUbvE)...

Есть ещё EmuZGL, сделанный Владимиром в 2008 году. Так он вроде как попроще и стабильнее.

Bedazzle
18.09.2017, 22:23
Есть ещё EmuZGL, сделанный Владимиром в 2008 году. Так он вроде как попроще и стабильнее.

И чем он выделяется среди других эмулей?

NEO SPECTRUMAN
20.09.2017, 00:40
и еще пожелания по допилу эмузвина
в асме всплывающее окошко с вариантами того чего мы хотим ввести очень сильно мешает
оно постоянно выскакивает и закрывает набираемый текст
в придачу это происходит когда пытаешся что нить исправлять, менять

нужно риал тайм обновление sprite finder-а
и так же риалтайм обновляемый hex виевер



3Ы возможно иногда емузвин сохраняет битые sna или z80 снапшоты
которые потом не открываются другими эмулями
(возможно путаю с другим эмулем)

Reobne
20.09.2017, 05:10
в асме всплывающее окошко с вариантами того чего мы хотим ввести очень сильно мешает
оно постоянно выскакивает и закрывает набираемый текст
Нажми кнопку "Options"(выглядит как рука, указательным пальцем тыкающая в список) и убери галочку "Autocompletion".

Alex Rider
20.09.2017, 13:58
Оффтоп уехал сюда (http://zx-pk.ru/threads/28126-vsyakoe-pro-emulyatory-(iz-temy-pro-emuzwin-hack).html)

NEO SPECTRUMAN
21.09.2017, 00:41
"Autocompletion".
ну где ты был раньше
а этот Autocompletion в плохозаметном месте
в группе\возле настройки шрифтов
и воспринимается как одна из его настроек

Reobne
21.09.2017, 17:30
16) В редакторе ассемблера. Автозавершение нужно чтобы было включено всегда, но активировалось не само, а по "Ctr+Space". В списке должны присутствовать ключевые слова ассемблера.
Ещё лучше, сделать умное автозавершение. Если я начал писать в начале строки, пусть сгенерирует подходящие новые метки и имена макросов. Если пишу в области команды, пусть предлагает команды, макрокоманды, имена имеющихся макросов. Если ввожу аргументы, пусть предлагает функции, метки.
17) В дебагере. Точка останова по диапазону. Если снять галочку, она всё равно срабатывает. :( Когда вводишь начало диапазона, теряется его конец - нужно, чтобы конец следил за началом, только если он с ним изначально совпадал.
18) В редакторе ассемблера. Окошко поиск с заменой. Нелогично, что "Replase all" заменяет не всё в тексте, а от курсора вверх или вниз. Нужно сделать либо чтобы менялось всё, а чекбокс "Search backward" убрать. Либо сделать диалог "Достигнут конец, продолжить сначала?".
19) В редакторе ассемблера. Окошко поиск с заменой. Часто мы заменяем имя метки на другое, поэтому надо добавить чекбокс "Слово целиком". Чтобы заменяя Label1 не заменялось Label11.
1A) В ассемблере. C-- for Z80 embedded. . Прямо копирую пример из помощи "(DE)=(BC)" - не компилирует.
Если получается два раза рядом EXX, пусть сокращаются.

CityAceE
22.09.2017, 02:51
1B) Перевести всё в Lazarus и сделать кроссплатформенным ;)

Bedazzle
22.09.2017, 07:03
1B) Перевести всё в Lazarus и сделать кроссплатформенным ;)

Яростно плюсую.

Shiny
22.09.2017, 08:14
Lazarus это нечто.

s_kosorev
30.09.2017, 18:30
Исключительно в частном порядке или другие желающие (я, например ) тоже могут ознакомиться?
за донат

Titus
20.01.2018, 01:23
У меня в новой версии ассемблера рухает в ошибку приложения при компиляции локальных меток начинающихся с точки.
Он ругается на них и после чего говорит, что ошибка приложения.

Так же не работает локальная метка начинающаяся с '?'.

Другие символы '@', '!' и т.д. - работают.

Поразбирался еще. Виснет не на метках, а просто на большом проекте. Причем, непонятно, где. Вроде уберешь тот кусок, на котором виснет, отдельно его скомпилируешь - все окей. А когда в составе длинного исходника, виснет.

На классическом кладовском ассемблере - не виснет.

Еще поглубже разобрался. На моем исходнике виснет и кладовский билд 2.8. А билд 2.5c - не виснет)

error
25.01.2018, 19:11
Если нужно знание VCL, особенно двойная буферизация (https://habrahabr.ru/post/318876/) - готов помочь :)

Mor-Da
26.01.2018, 15:12
А как бы скачать сие чудо, для пробы, а то все ссылки битые.

dosikus
27.01.2018, 12:47
А как бы скачать сие чудо, для пробы, а то все ссылки битые.
Таки да.

DenisGrachev
27.01.2018, 16:04
Антивирус хостера тоже ругается на этот эмузвин, так что они мне его грохнули. Вот вроде в дропбоксе нашёл у себя, но править что-то дальше не очень хочется.
Я перешёл на sjasm + любой эмуль и не особо мне сейчас актуален эмузвин :)

https://www.dropbox.com/s/2vtnixfoayw69sk/emuzwinhack1.zip?dl=0

- - - Добавлено - - -


Если нужно знание VCL, особенно двойная буферизация - готов помочь

Там всё сделано на KOL, поэтому знание vcl не поможет :)

Shiny
27.01.2018, 16:11
тогда бери до кучи Spectaculator, который созданные ужасмом .SNA запускает.

DenisGrachev
27.01.2018, 16:24
тогда бери до кучи Spectaculator, который созданные ужасмом .SNA запускает.

Спектакулятор у меня основной эмуль, у меня даже ключ именной :) да и дебагер там норм. А второй это specEmu чтобы на снег проверять :)

Shiny
27.01.2018, 18:31
Спектакулятор у меня основной эмуль, у меня даже ключ именной
понты(:

Дебагер не идеал, но вот припилить к нему бы хоть пару фич.

Titus
28.01.2018, 08:08
Дебагер не идеал
Дебаггер на Спектакуляторе более, чем скромненький.

Shiny
28.01.2018, 12:32
Дебаггер на Спектакуляторе более, чем скромненький.

не, ну хотя бы breakpoint есть. А условные бряки всего лишь мечты.

DenisGrachev
28.01.2018, 12:42
Дебаггер на Спектакуляторе более, чем скромненький.

Да, в эмузвине самый крутой и юзер френдли, особенно в паре со встроенным асмом, тут уж 100%
Но по мере наработки опыта я вдруг понял что я почти перестал пользоваться дебагером, так что не критично

Titus
28.01.2018, 14:03
Но по мере наработки опыта я вдруг понял что я почти перестал пользоваться дебагером, так что не критично
Смотря что делаешь. Если занимаешься демами, где каждый такт на счету, и надо контролировать много параметров - Эмузвин незаменим)

А в чем была причина неотображения иконок на Вин8?

DenisGrachev
28.01.2018, 16:02
Смотря что делаешь. Если занимаешься демами, где каждый такт на счету, и надо контролировать много параметров - Эмузвин незаменим)

Мне вполне хватает визуально бордером замерять, сразу всё видать :) А тебе-то зачем? у тебя же на листочках все демы :v2_dizzy_punk:


А в чем была причина неотображения иконок на Вин8?

Если вкратце то из-за manifest файла, старая и спорная технология смутных времён :) Удаляешь manifest файл и всё путём

Titus
28.01.2018, 17:43
Мне вполне хватает визуально бордером замерять, сразу всё видать :) А тебе-то зачем? у тебя же на листочках все демы :v2_dizzy_punk:

Иногда сажусь за асм же ж)

DenisGrachev
29.01.2018, 06:35
Иногда сажусь за асм же ж)

Да ладно? :) Надо чаще садиться!!! Давай-давай, ждём, надеемся и верим!
Смотри там вон EA даже вернулся, фигарит треки, кооперируйся с ним, потом ААА графики докинет и дело в шляпе.

https://zxart.ee/eng/authors/e/ea

Titus
29.01.2018, 08:22
потом ААА графики докинет и дело в шляпе
Ну уж если чего-то и захочу написать, то точно не с 'докинутой' графикой) На спектруме немало замечательных художников и сейчас)

ZX_NOVOSIB
29.01.2018, 08:34
Напиши тада дему без графики, и без музыки - только чистый сильный код!

DenisGrachev
29.01.2018, 08:43
Ну уж если чего-то и захочу написать, то точно не с 'докинутой' графикой) На спектруме немало замечательных художников и сейчас)

Ого! Да всё серьёзно :v2_dizzy_priest: Ну если серьёзно то это надолго, лет на 5, минимум :)

Titus
29.01.2018, 08:48
Напиши тада дему без графики, и без музыки - только чистый сильный код!
Т.е. предлагаешь сделать мерседес, но не покрасить его? Оригинально)

- - - Добавлено - - -


Ого! Да всё серьёзно Ну если серьёзно то это надолго, лет на 5, минимум
Бери 10)
Щас нас за оффтоп перенесут куда-нибудь) Лучше в тему о демописании.

DenisGrachev
29.01.2018, 09:38
Бери 10)
Щас нас за оффтоп перенесут куда-нибудь) Лучше в тему о демописании.

А так всё жоско стало тут? Ну серьёзные демки то так и делаются по несколько лет!
В любом случае если надо будет помочь вдруг с эмузвином и трд всегда готов :)

Shiny
29.01.2018, 09:53
ненене, только отдельной темой, ААА сам доктора Титуса окучивает.

Titus
29.01.2018, 10:03
В любом случае если надо будет помочь вдруг с эмузвином и трд всегда готов
Чего с ним помогать) Ни одна из версий не без недостатков. Тот релиз, что у меня - стабильно компилирует, но имеет глюки - неработающие директивы загрузки бинарного файла в память, а так же не переключает странички при ассемблировании.
Тот, из которого делал ты - все это умеет, но при этом рухает на моих исходниках намертво)

DenisGrachev
29.01.2018, 10:23
Тот релиз, что у меня - стабильно компилирует, но имеет глюки - неработающие директивы загрузки бинарного файла в память, а так же не переключает странички при ассемблировании.

А какой у тебя? 2.5?

Titus
29.01.2018, 12:50
А какой у тебя? 2.5?
2.7, билд 2.5c.

- - - Добавлено - - -


Если вкратце то из-за manifest файла, старая и спорная технология смутных времён Удаляешь manifest файл и всё путём
Блин) Так просто все решалось. Кто бы догадался)
А почему из-за него все портилось?

DenisGrachev
29.01.2018, 15:17
2.7, билд 2.5c.

- - - Добавлено - - -


Блин) Так просто все решалось. Кто бы догадался)
А почему из-за него все портилось?

https://m.habrahabr.ru/post/230505/

Блин, замкнутый круг какой-то, в одной версии одно, в другой другое. Не могу найти такой билд 2.7 билд 2.5 чтобы проверить :(

Titus
29.01.2018, 18:39
Блин, замкнутый круг какой-то, в одной версии одно, в другой другое. Не могу найти такой билд 2.7 билд 2.5 чтобы проверить :(
Давай почту, кину.

ZX_NOVOSIB
11.07.2018, 11:23
DenisGrachev, сможешь сделать спец.версию, которая бы собирала бинарник, но прилепляла бы к нему два байта (стартовый адрес из ORG)?

Если бы в бинарнике была инфа о стартовом адресе, то можно было бы попросить интроспека усовершенствовать свою bin2tap. В итоге по кнопке ф4 асма эмузвина сразу бы собиралась и запускалась тапка в нормальном эмуле, и сразу же автостартовала. Как .sna, только лучше, ибо tap.

Shiny
11.07.2018, 11:33
ZX_NOVOSIB, откуда такая спешка? зачем один клик для сборки?

DenisGrachev
11.07.2018, 11:45
DenisGrachev, сможешь сделать спец.версию, которая бы собирала бинарник, но прилепляла бы к нему два байта (стартовый адрес из ORG)?

нет, всё померло вместе с ноутом на который я делфи ставил :) оргов кстати может быть много, в случае эмузвина надо из entrypoint брать адрес. Но это какая-то наркомания, ибо сделать универсальную автосборку это не такая простая задача и проще иногда руками

Bedazzle
11.07.2018, 15:46
нет, всё померло вместе с ноутом на который я делфи ставил :)

Дельфи - бог с ней.
А исходники не бэкаплены шоле? 8-/

DenisGrachev
12.07.2018, 06:06
А исходники не бэкаплены шоле? 8-/

Исходники модифицированного асма? а фиг знает, не так уж и много я там поменял :) я перелез на sjasm+FAR и мне стало побоку

Raydac
24.11.2019, 01:41
а что это за "UPX алгоритм" которым судя по документации зажаты EZX файлы? написано, что просто и быстрый, но гугл знает UPX утилиту, а алгоритм такой что-то неизвестен

Bedazzle
24.11.2019, 02:03
а что это за "UPX алгоритм" которым судя по документации зажаты EZX файлы? написано, что просто и быстрый, но гугл знает UPX утилиту, а алгоритм такой что-то неизвестен

Учитывая, что она опенсорс, Кладов мог использовать модуль для пожатия не экзешников, а снапшотов.

Raydac
24.11.2019, 02:13
Учитывая, что она опенсорс, Кладов мог использовать модуль для пожатия не экзешников, а снапшотов.
да что-то непохоже на использование этой утилиты, так как там от сигнатуры до начала данных всего пять байт в ezx и вообще upx если ей неисполняемый файл пытаться скормить, то ругается и посылает, может конечно действительно заюзал какие-то блоки оттуда, но настораживает то, что он говорит, про алгоритм, а у UPX это название утилиты, а алгоритмы другие, типа UCL

0din
01.12.2019, 20:47
Привет. Ссылка в первом посте померла , перезалейте пожалуйста.

DenisGrachev
11.12.2019, 07:16
Привет. Ссылка в первом посте померла , перезалейте пожалуйста.

Хостер определяет его как вирус :) пришлось удалить

Bedazzle
11.12.2019, 07:51
Хостер определяет его как вирус :) пришлось удалить

Хостера можно успокоить если в рар под пароль с опцией прятать имена файлов внутри.

NEO SPECTRUMAN
11.12.2019, 08:05
Хостера можно успокоить если в рар под пароль с опцией прятать имена файлов внутри.
только некоторые хостеры
ругаются на архивы с паролем
архивы с архивами внутри

- - - Добавлено - - -

а Гнусная Мпочта
помоему даже отфильтровывает архивы содержащие .ехе...

Raydac
11.12.2019, 10:52
когда на работе скачал EmuZwin с VirtualTRdos, то из инфраструктуры тоже тут же сигнализировали, что обнаружен файл с вирусом и спросили действительно ли мне нужна эта прога, пришлось удалить

ZX_NOVOSIB
11.12.2019, 12:19
и спросили действительно ли мне нужна эта прога, пришлось удалить
А всего-то нужно было ответить: "Нужна." И тогда можно было бы не удалять )

Raydac
11.12.2019, 12:34
А всего-то нужно было ответить: "Нужна." И тогда можно было бы не удалять )
софт не опенсорсный, такому доверия мало и если на него есть намек на ругань, лучше не держать у себя

Bedazzle
11.12.2019, 23:54
когда на работе скачал EmuZwin с VirtualTRdos, то из инфраструктуры тоже тут же сигнализировали, что обнаружен файл с вирусом и спросили действительно ли мне нужна эта прога, пришлось удалить

Оно на большинство софта, написанного на дельфи так сигнализирует.
Думаю, какие-то куски кода по сигнатурам совпадают со зловредами.

nzeemin
12.12.2019, 01:13
когда на работе скачал EmuZwin с VirtualTRdos, то из инфраструктуры тоже тут же сигнализировали, что обнаружен файл с вирусом и спросили действительно ли мне нужна эта прога, пришлось удалить

Идёшь на сайт антивируса, делаешь report false positive, через несколько дней всё выходит в норму.

Raydac
12.12.2019, 01:24
Идёшь на сайт антивируса, делаешь report false positive, через несколько дней всё выходит в норму.
для такого надо иметь уверенность, что false positive, исходников нет, никто не знает что там, какую-то уверенность дает когда сам из исходников собираешь, а так даже на той машине где собиралось, что-то могло "подсесть" если была заражена

NEO SPECTRUMAN
12.12.2019, 05:11
Ну при таком уровне параноидальности
лучше вообще сидеть на чистой винде
не подключать интернет
не совать флешек
на всякий случай отключить мышу и клавиатуру
да и включать комп на 15 секунд в день
а лучше не включать
а то вдруг еще вирусы по питанию пролезут
из за скачков напряжения в памяти соберется страшный вирус
и украдет все ваши банковские счета...


лично у меня для недоверенного софта есть виртуальная машина
для менее недоверенного софта есть песочница

да и вин15 сама похлеще вирусов будут
не говоря про то, что уже в железе заложено все для "небезопасносте"...

ZEman
12.12.2019, 17:56
я уже года 2 сижу без всяких антивирусов.
только виндовс-дефендер в 10е и свои мозги, большего и не нужно.

ZX_NOVOSIB
12.12.2019, 18:38
Я лет 10-12 без АВ, на винХП

Dexus
18.09.2020, 17:39
Поскольку дропбоксы и всякие другие файлообменники имеют короткую жизнь, перевыкладываю у себя:

https://volutar.myds.me/zx/emuzwinhack.zip
http://volutar.eu5.org/emuzwinhack.zip

Black Cat / Era CG
18.09.2020, 18:29
Дропбокс вроде бы не удаляет файлы сам, если не удалит владелец аккаунта.

Bedazzle
18.09.2020, 19:57
Дропбокс вроде бы не удаляет файлы сам, если не удалит владелец аккаунта.

Могут блочить акк, если варез засветился. Мне несколько дней размораживали, после того как неправильные файлы потёр. :)