1 ты скорее всего пытаешься искать в скомпрессированном блоке
2 мало места для бейсик программы
Вид для печати
1 ты скорее всего пытаешься искать в скомпрессированном блоке
2 мало места для бейсик программы
И как в таком случае найти адрес карты во втором левеле? )
1.искать в распакованном блоке
2.посмотри оригинал с WoS
3.последовательность для поиска экранов выбрана правильно.
всегда старайся изучать оригиналы, а не сделанные из непонятно чего адаптации.
Про скомпрессированный блок понял, там надо сначала сделать usr 24500 и блок распаковывается, но "мало места для бейсик программы" - это проблема..
---------- Post added at 00:31 ---------- Previous post was at 00:30 ----------
оригинал с ВоСа посмотрю, но маловероятно, что там для нужной бейсик программы хватит места.
---------- Post added at 00:41 ---------- Previous post was at 00:31 ----------
Это понятно. Но в данном конкретном случае, мне кажется, что с этой русификацией всё окей. Потому что в первой части, после распаковки, все байты на своих местах (всмысле карта действительно начинается с 45363, да и покесы которые ты давал работают, следовательно можно считать эту версию корректной, и для наших целей она=оригинал)
---------- Post added at 01:20 ---------- Previous post was at 00:41 ----------
Кажется я нашёл адрес карты второго левела (по крайней мере в тапке с ВоСа)
45479
Щас проверю для точности..
---------- Post added at 01:36 ---------- Previous post was at 01:20 ----------
Да, это он! :D И в русифицированой версии с вирта тоже самое, значит она корректна, что и требовалось доказать. Впринципе теперь я могу сам редактировать карты обоих левелов. Только я не знаю как сделать, чтобы можно было возвращаться в нулевой экран :( Всё-таки, если уж делать, то делать нормально.
ZX_NOVOSIB, цифири обрамляй в val"цифирь", меньше места занимает.
в WinHex'е думаю легче найти - зачем вам этот бейсик ?
shurik-ua, хотелось бы, что бы ты оказался прав, ибо копаться в кодовом блоке средствами бейсика - это полная жесть )) Только я ни разу не пользовался винхексом.
Щас вот скачал с рутрэкера 16-ую версию, русифицировал её.
Допустим задача прежняя - найти в памяти спектрума последовательность 0,1,0,0,х,х,0,2,0,0,х,х,3,0,0,0 И не просто найти её, а узнать с какого адреса в памяти спекка она начинается. (Где x - любое неизвестное число от 0 до 255)
Что надо делать? Надо запустить эмулятор спекка, загрузить в его память нужный блок и переключится в винхекс? Что в винхексе жать?
Щас для интереса с помощью тотал коммандера извлек из TAP кодовый блок, и открыл это блок винхексом - ничего вообще не понятно, и я сомневаюсь что таким образом можно вообще найти искомую последовательность.. и какой либо адрес
Загрузи кодовый бок, распакуй его, сделай снапшот в эмуляторе. Снапшот открой в WinHex, ищи там последовательнось, правь и сохраняй. В снапшоте же тестируй, как наиграешься - сохрани кодовый блок в образ.
Alex Rider, Вот снапшот из спекулятора.
Как там найти искомую последовательность?
Как там понять какое значение в какой ячейке (по спектрумовски)?
Поиском ничего не ищется. Куда тыкать, что вводить то?
Вообще ничего не понятно, 2 столбика по 8 #цифр, слева какие-то непонятные #адреса :(
Я переделал карту первой части. Ура.
)))
За основу взял английскую версию, ибо в русской нет ввода кода во второй части и нет переработанной графики. 1-ую пока не выкладываю, ибо надо вторую часть сначала доделать.
Пока 2 проблемы:
1. Хочу задействовать REX2 с графикой от Lethargeek, а несжатого блока у меня нет.
2. Не знаю как изменить запрет на переход с 0 на 255. (а без этого нельзя будет вернуться в стартовую комнату) Пробовал искать похожие куски кода (последовательности байт), которые за это отвечают в 1-ой части, но ничего даже близко похожего не нашёл. :(
---------- Post added at 03:36 ---------- Previous post was at 03:15 ----------
В первой части изменение запрета с 0 на 255 делалось так:
d0a4 f8
d0b5 f8
d13c f8
d19f fa