а я уже было подумал а воз и ныне там
у нас есть основное окно с отображением движение луча
но оно у нас прибито гвоздями и его тупо не здвинешь...
и даже не клацнешь по нему чтобу его увидеть
по хорошему нужно сохранить активность главного окна
- - - Добавлено - - -
я так понимаю риалтаймового мемори\скрин виевере досихпор нет
хотя нашел обновляемый спрайтсканер
и в сочетании с трасировкой это то что нужно
может сделать настраиваемую скорость трасировки
пушо щас все сиииильно медленно чтоб следить за тем что происходит во всяких там экранных буферах
хотя и такая скорость тоже нужна
опять же проблема всех эмулей
как из дебагера нажать какую нибудь кнопку?
виртуальная клавиатура так же недоступна
3ы
перебрал кучу эмулей
нигде нету нужного мне прямо сейчас функционала...
- - - Добавлено - - -
в дебагере нехватает кнопки стоп
сходу не очевидно что ее функцию выполняет ESC
при этом кнопка со стопом висит
но оно зачем то отвечает за бреикпоинты
может стоит ее подписать break?
и еще сильно не хватает бегунков для hex и disasm виеверов
я в курсе что адрес можно и вписать и это тоже есть хорошо
- - - Добавлено - - -
нужно впилить в memory sprite scanner
отображалку адреса под курсором
и еще дето есть бага
при закрытие спрайтсканера и дебагера
на основном экране осталось содержимое (старое) спрайт сканера
наложенное 50\50 на экран спека
повторить не смог...
- - - Добавлено - - -
Можно дополнительно вплить редактирование в дизасме по нажатию ентер как в унриале?
еще в унриале во время редактирование тебе предлагают изменить содержимое
а не вписать его заново
а тут нужно запомнить что было до этого а потом вписать
а если нужно поменять один символ в каком нибудь ld a,(ix+nn) ld de,$1234 например...
еще в унриале можно поставить fetch брейкпоинт
нажав на пробел что очень удобно
зачем начинать редактировать пробелом мне непонятно
при этом в унриале так же можно сразу начинать писать текст на замену (с очисткой содержимого)
а вот при нажатии на ентер содержимое не теряется
при этом при двойном клике тоже ожидаешь редактирование
а не очистку содержимого и редактирование
- - - Добавлено - - -
А еще пока xpeccy стоит в дебагере на паузе
проц загружен на 22% и вентиляция не выключается
что не есть хорошо
нужно легко ставить брекпоинты на диапазон адресов
чтоб вписывать что то типа 0000-FFFF
когда ставишь write break в дизасме
он ставиться только на первый байт несколько байтной команды
а если это какой нибудь ld hl,0000
то это тоже самое что он не ставится
брекпоинты поставленные из дизасм-а сразу привязаны к номеру банки
и отображаются в виде номер банка и смещение в нем
а ставим мы их не по смещению а по конкретному адресу
а потом смотриш в список бреикпоинтов и не видиш то что там должно быть
нужно дополнительно указывать по какому адресу оно было изначально поставлено
пытаюсь перевести из RAM cell в CPU adr BUS
так CPU adr BUS попадет смещение внутри банки а не адрес по которому я ставил в окне дизасма....
или сразу список из 6 видов брекпоинтов
с привязкой к адресу ЦП
и с привязкой к адресу в раме
что в общемта проще сделать
а еще неплохо бы иметь названия для бреикпоинтов
и возможность их сохранить на потом
чтоб загрузить их все через 3 дня
если их 100500 штук
нету кнопки удалить все брекпоинты (хотя она не нужна)
НО ПРИ ЭТОМ
1. КНОПКА УДАЛЕНИЕ ПОСЛЕ УДАЛЕНИЕ НЕ ВЫДЕЛЯЕТ СЛЕДУЮЩИЙ ПУНКТ
И НЕЛЬЗЯ УДАЛИТЬ ВСЕ ПОКЛИКАВ ПО КРЕСТИКУ
2. СТRL A НЕ ВЫДЕЛЯЕТ ВСЕ БРЕКПОИНТЫ
3. НЕЛЬЗЯ ВЫДЕЛИТЬ ВСЕ БРЕКПОИНТЫ МЫШОЙ НАЧИНАЯ ВЫДЕЛЯТЬ ИЗ ПУСТОТЫ ЧТО НИЖЕ
НУЖНО ОБЯЗАТЕЛЬНО ЗАЧЕМ ПРИ ЭТОМ НАВОДИТЬ НА КАКОЙ НИБУДЬ БРЕКПОИНТ И ТОЛЬКО ТОГДА ВЫДЕЛЕНИЕ НАЧИНАЕТ РАБОТАТЬ!!!!!!!
4. ПЕРЕМЕЩЕНИЕ ВЫДЕЛЕНИЯ КУРСОРОМ ПО БРЕИКПОИНТАМ НЕВОЗМОЖНО
5. НЕВОЗМОЖНО ВЫДЕЛИТЬ СПИСОК БРЕКПОИНТОВ КУРСОРОМ И ЗАЖАТИМ CTRL ИЛИ SHIFT-ОМ
это из разряда должно быть во всех гуях на венде иначе *****код вроде как
нет может конечно и не все пункты и я преувеличил
но в интуитивно понятном интерфейсе оно должно быть
- - - Добавлено - - -
И ЕЩЕ Я В УПОР НЕ ПОНИМАЮ (целая куча дебагеров)
ЗАЧЕМ ПОЧЕМУ!!!!!!!!!!!!!!!!!!
КОГДА СТОИТ БРЕИКПОИНТ НА ЧТЕНИЕ ИЛИ ЗАПИСЬ
НУЖНО ОСТАНАВЛИВАТЬСЯ НА КОМАНДЕ КОТОРАЯ УЖЕ ПОСЛЕ ЭТОЙ ЗАПИСИ
НЕУЖЕЛИ НИКАК НЕЛЬЗЯ ОСТАНОВИТЬСЯ НА ЭТОЙ КОМАНДЕ ДО ЕЕ ВЫПОЛНЕНИЯ!!!!
НЕТ Я ПОНИМАЮ ЧТО ЕСЛИ СРАЗУ ЭТО НЕ ПРЕДУСМОТРЕТЬ ТО ЭТО КОСТЫЛИ...
при этом никогда(все время и не пойму неужели это никому не надо?) для fetch брекпоинтов не запоминается предыдущее значение PC
и фиг поймешь от куда был вызов...
а еще по моиму Ф5 не работаетF5....вернуться к предыдущему адресу по истории
или что оно должно делать?
у меня оно вообще ничего не делает
- - - Добавлено - - -
при установке бреикпоинтов руками
ввод hex значений сделан через одно место
десятичное значение рядом редактируется без проблем
ну НАХРЕН оно нам надо когда оно десятичное!!!!!!!
мы что в бейсике находимся?
лучше бы так редактировалось шестнадцетиричное значение (впридачу редактор ригистров нормально себе сделан)
жмеш бекспейс и просто происходит какаято дичь....
и выглядит этот режим замены как обычная строка для ввода с костылями
нафига там вообще десятичный адрес?
шестнадцетиричные адреса вачесов так же неудобно редактируются
- - - Добавлено - - -
снятие всех флагов фетч риад врайт
убивает нахрен брекпоинт
ЗАЧЕМ!!!!!!!!!!!1
когда мы просто хотим снять одно и поставить другое
- - - Добавлено - - -
3Ы3Ы: SAM style нет это у меня не истерика
просто я выделил то
об что я постоянно спотыкаюсь
Последний раз редактировалось NEO SPECTRUMAN; 12.01.2018 в 21:24.
tl;dr. в основном отвечу днём.
F2 - поставить fetch на текущий адрес (именно на адрес)
F5 - это возврат к адресу, который был до F4. А по F4 переходится на адрес, указанный в команде (call nn; ld hl,nn; ld a,(nn) итд). Если переходов по F4 не было, никто никуда не вернётся по F5
Если делать дебугер не-модальным (чтобы можно было переключиться на основное окно), то кто-нибудь обязательно заметит, что нажатия кнопок передаются основному окну, а щелкать окна туда-сюда руки отсыхают. А вообще, это винда-проблема. В этих наших линуксах неактивные окна отлично таскаются.
Чтобы не убивать брыкпоинт снятием всех флагов, сначала ставь нужные, а потом снимай ненужные. Чтобы отключить брык, есть флаг on.
Останов по чтению-записи происходит по факту чтения-записи, а это уже становится ясно ПОСЛЕ выполнения команды. Если я ещё буду предсказывать каждую команду, жручесть только возрастёт. И да, там не только Z80, а чтобы вкурить все способы адресации 6502, надо нехило упороться.
И да, поделие не в меру жручее. Сто раз об этом говорили.
Все любят гипножабу
всмысле в 2ду лист
самое раздражающее я выделил сильнее чем просто каждый пункт
тогда нужно продублировать весь теряемый функционал в самом дебагере
и лучше когда это отдельные окна которые тянеш куда хочешь
и смотриш одновременно
чем переклацываеш 100500 влкадок и кнопочек в дебагере
дык а залочить управление по факту вызова дебагера?
оставить только обработку кнопки закрытия
костыли наше фсе
по хорошему это нужно выпилить или опцией
пушо как минимум это неудобно и бесит
и не думаю что только одного меня...
в том и проблема что после
а по хорошему нужно во время (и нужно было думать за ранее об этом)
если очень сложно впилить это щас
то нужно или как то вернуться к предыдущему состоянию
а если и для этого нет данных то хотябы
перевести фокус дизасма на предыдущую команду и оставить выделенным выполняемую
этим хотя бы можно будет пользоваться
то щас по срабатыванию брейка
пишушая читающая команда оказывается за экраном
и поклацать ескейпом и посмотреть от куда идет чтение запись уже не получается
проблема понять от куда был jp на зафетченую команду я так понимаю тоже есть
не при работе то да
нет проблем
проблема что оно жрет на паузе чуть меньше чем при нагрузке
впринципе это терпимо и на слобой машине работает
насчет сто раз я только заметил
когда стал активно им пользоваться (задолбалось клацать между унриалом и эмузвином(при том всех нужных функций даже в сумме у них нет...))
- - - Добавлено - - -
а потом еще дергаются после как желейные...
это да
тут без веществ никак
понять описание впринципе невозможно
можно только проверить методом научного тыка в каком нибудь дебагере
и посмотреть как же оно работает
я сам его толком еще ниасилил
хотя писать эмулятор начал... ну так и не...
Последний раз редактировалось NEO SPECTRUMAN; 03.01.2018 в 02:14.
build 20180106
Промежуточный вариант. Попробуем так...
- Не-ASCII символы в путях не мешают создавать дефолтные конфиги
- Окно отладчика не перехватывает фокус у основного окна
- Alt+K в отладчике так же открывает окно клавиатуры
- Space в дизасме дублирует F2 - ставит Fetch на адрес
- Enter в дизасме вводит в режим редактирования
- Переделана работа клавиатуры, возможны
багифичи- В ATM2 начал работать тамошний контроллер клавиатуры. Возможны
фичибаги- Зафиксил работу HDD и мультиколора в ATM2
- Починено копирование файлов в ленты на диск
[ deb 32 ][ deb 64 ][ rpm 32 ][ rpm 64 ][ dmg 64 ][ win 32 ]
Последний раз редактировалось SAM style; 06.01.2018 в 15:50.
Все любят гипножабу
вроде работает
накидай еще в дефолтные конфиги еще каких нибудь платформ (15 платформ в списке)
ибудет почти усем счастие
и если какой нибудь расширенный спектрум еще можно попытаться настроить в ручную
то проделать это с каким нибудь msx2-ом
толком не зная устройства мскса и не имея дефолтного конфига уже проблематично (хз в каком окне у него пзу)
+ром-ы к нему нужно искать
- - - Добавлено - - -
щикарно!
добавь еще оно в ту меньюшку где спрайтсканер
или отдельной кнопкой в дебагере
теперь не хватает регулироуемой скорости трасировки
чтоб нажать на кнопу и увидеть результат хотябы через минуту ожидания))))))
- - - Добавлено - - -
еще по моему не упомянул про окошко превиева в дебагере
оно сильно мелкое
а на мониторе 1920х1080 его уже будет достаточно трудно вообще рассмотреть
его было бы не плохо отдельным окном с масштабированием (я щас смотрю спрайтсканером но в нем нет атрибутов и режима только атрибуты)
и так же непонятно зачем десятичное смещение (только десятичное)
с таким же успехом окна спрайт сканера\hex виевера\виевера экрана с произвольного места не помешали бы и при обычной работе эмулятора а не только из дебагера
- - - Добавлено - - -
в вачесах
можно отображать и регистры Ау-ков
- - - Добавлено - - -
хорошо но при редактировании хекс значений из дизасма
вылазят еще дополнительные пустые места
в придачу только их сначала и видноКод:18:F2: : :
лучшо если бы оно было как редактирование регистровКод:2: : :
- - - Добавлено - - -Код:18F2
за одно нашел нематерные слова для описание глючности ввода шестнадцатеричных символов в спрайт сканере
кроме того что нормально не работает бекспейс
он то стирает нормально то внезапно стирает и подставляет старшим ниблом 0 (чаще второе. автоповтором стирает нормально)
цифры вводятся нормально
но при вводе a-f курсор сразу перескакивает в конец строки
тоесть чтоб ввести ffff
нам нужно 4 раза переставить курсор
если значение не из 4-х ниблов (FFFF)
то даже ввод цифер сопровождается перескакиванием курсора в конец строки
- - - Добавлено - - -
с вводом адреса вачесов примерно таже проблема
+шестнадцатеричный адрес вачесов невозможно ввести пока не изменили десятичный адрес
- - - Добавлено - - -
а еще xpeccy успешно валиться если из дизасма
попытаться пометить что нибудь как Address (из той менюшки с 3-мя столбца где еще opcode\byte\ascii\word)
- - - Добавлено - - -
если в дизасме вписать адрес команды
а эта команда находится в поле видимости
то выделяется не набранный адрес
а следующий на 1-2 байта
при этом если пытаешься вписать адрес второго байта команды
редизасемблирование не происходит!!!!!!!
и так же выделяется команда на 1-2 байта ниже
если это вне поля видимости то все работает как нужно
- - - Добавлено - - -
еще есть такая же проблема как и у унриала
если поставил бреикпоинт
и играешься и ждешь пока он сработает
при его срабатывании
сразу запускается редактирование чего нибудь
и набивается туда то что ты жал во время срабатывания бреикпоинта
тут по хорошему не помешал бы короткий игнор тех клавиш которые только что были нажаты (чтоб увидев окно дебагера можно было успеть среагировать и их отпустить)
или даже не игнор (пушо это тоже может вызвать всякие траблы когда много брекпоинтов и их все захочетсо быстро пролистать)
а короткая невозможность редактирования чего либо (десятые доли секунды)
хотя возможность сразу же нажать хоткеи дебагера это тоже палка с двумя концами...
- - - Добавлено - - -
а почему ускорение висит на insert-е? а не как у унриала?
пентевы юзают нумлук?
умя этот инсерт впритык рядом с ф12 и им легко случайно все сбросить нафик...
может не нужно для сбросов использовать одиночные клавиши?
это в эмузвин есть откат (после сброса кнопкой эмуля реально можно вернуться обратно в момент когда все еще работает)
а тут его нет
и можно все легко потерять
нельзя сделать ускоренную скорость еще ускоренней?
- - - Добавлено - - -
А ЕЩЕ БЫЛО БЫ ПОЛЕЗНО ВАЧЕСИТЬ
значение в определенном регистре на момент исполнения определенной команды
чтоб оно обновлялось только при исполнении команды
- - - Добавлено - - -
Ищо насчет вачесов
было бы полезно например вести лог изменения (там десяток последних значений (когда менялись а не одни и те же))
или проецирование на экран как в унриале
к примеру щас с трудом пытаюсь попасть по фрагу (а он зараза маневренный)
и пытаюсь рассмотреть что же там вачесит в момент попадание
а там далеко мелко и сразу пропадает
ставить бреикпоинт безсмысленно
переменная постоянно читается и записывается
тут вообще нужон унриалский брейкпоинт по условию
Последний раз редактировалось NEO SPECTRUMAN; 07.01.2018 в 22:48.
С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
SAM style, 2 последние строки в hex виевере дебагера не редактируются!!!!!!!!!!!
ни адрес ни значения
еще нужно сохранение положения курсора в hex виевере дебагера
например поправил вышел глянул что изменилось
нажал ескейп опять поправил (без дополнительных отсчитываний снова где же какой нибудь ***B, всматриваний в экран и тыканий по ним мышлой)
в унриале так и сделано и это удобна
- - - Добавлено - - -
значит добавиь оно в факью в первом посте
в теме 130 страниц же
и пометь возможные траблы при установке
Последний раз редактировалось Alex Rider; 12.01.2018 в 19:04. Причина: Поправил цвет текста
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)