ААА, ну ты чего совсем шоль? Конечно книга та, на которой ты вопрос поставил.
Я же тебе название дал, оно полностью срастается, да и по предисловию сравнить можно то, что в пдф и то, что в книге.
Мне надо вначале доделать Advanced Soccer Simulator.
В музоне я не шарю, мне придется это с нуля изучать. Чтобы просто запустить готовый музыкальный код, думаю, дня хватит для разборок. Но мне не хотелось бы этим заниматься.
Ты сразу хочешь что-то крутое писать. Надо с простого.
Я взялся помочь тебе изучить ассемблер, а не писать дему.
Вот, к примеру, ты можешь написать простенькую прогу, где квадратик 8 на 8 пикселов перемещается по экрану слева направо?
Если нет, то и что тогда за музоны и скролы браться?
Если ты сделаешь, что перечислено в пунктах выше ты научишься читать код, а далее все зависит от опыта и наработок. Сразу лучше самому не писать, а крошить чужой код. Ведь можно взять чужую демку выдернуть от туда эквалайзер, заменить у него графику, а движок оставить, вот тебе уже будет свой эквалайзер, попутно разберешься, как он работает. А там глядишь и свой придумаешь.
Я, ААА, тоже не гений, пишу все с листа, опыта нет, так чтобы тебе настряпать сходу все твои фантазии, но если поставиться целью все смогу. По крайней мере, свои идеи при адаптации все воплощал, и все работало.
Ну лучше с чего-то простого.
Например, выдернуть движок спрайтов от куда-то, подставить туда другой спрайт, третий... Так у тебя появится подпрограмма движения, далее ее доработать или оставить, если она тебя удовлетворяет.
Ты на амбразуру грудью кидаешься, с АСМом такое не пройдет это не бейсик, на котором сел и сразу все написал, подглядывая в книжку.
---------- Post added at 20:09 ---------- Previous post was at 18:47 ----------
alexeenko, могу тебе по своему опыту посоветовать.
Когда я брался адаптировать игру Elite к отгрузке на диск в маш коде, я мог читать машинный код и имел небольшой практикум. Мог печатать символы при помощи подпрограммы ПЗУ, опрашивать клавиатуру, перемещать экраны, двигать спрайты. Это достаточно скудный опыт, но все же... К диску, даже к ТР-ДОС, я ни разу не адаптировал меню отгрузок, что там говорить о +3Дос. Я пытался в детстве, но мне не хватало литературы.
Вот с этим багажом из детства я начал адаптировать. Ну кроме этого, был опыт просмотра кода, и походу поднаторел в пошаговой отладке/просмотре в дебагере эмулятора.
Короче, обратившись к литературе по +3ДОС, я быстро понял, что полной информации, как загрузить и сохранить файл в маш коде нет в фирменном руководстве. Есть только описание точек входа в ПЗУ +3ДОС, а по какому алгоритму их вызывать, что за чем не указано. Поэтому я взломал уже адаптированную иностранцами игру, добрался до подпрограммы отгрузок и просмотрел код при помощи встроенного дизассемблера эмулятора. Добраться до подпрограммы - это тоже целое искусство умелого расставления точек прерывания... Но с этим у меня как-то быстро с листа пошло, тут помогал опыт общего программирования и отладки программ на других языках. далее я списал эти подпрограммы, понял, что для чего вызывается, установил, что сначала включают мотор, потом открывают дос, затем пишут или читают, затем закрывают дос, и выключают мотор. Получив эту информацию, фирменное описание стало прозрачно и понятно читаться. Этого алгоритма там не хватало или я просто его там в английских буковках не усмотрел...
Далее я не полез сразу в игру, а попробовал просто абстрактно написать программу сохранения и записи в файл произвольной области памяти. Помучавшись вечер, я смог это сделать. Дальше уже полез в игру. Разложил ее по полочкам, нашел меню отгрузок, нашел резервы оперативной памяти, все сделал, но потом уткнулся в проблему переключения банков памяти и пзу, так как для +3ДОС необходимо их определенным образом включить, кроме того нужно было использовать свободный банк для размещения своей подпрограммы. Тоже возился долго, пока все осознал. Потом уткнулся в проблему, что переключиться на другой банк не могу, так как свободное место в игре именно там где банк переключают, и из этого вывернулся, а уж только потом написал процедуру расставил все, плюс кое что подредактировал в коде (я писал это в треде про адаптацию). потом муторно отлаживал, искал баги.
Вторую игру было проще адаптировать, так как многие неразрешимые для разума вопросы уже были сняты ранее. Поэтому, ААА, не бойся потратить месяц на изучения АСМа, потом будешь шлепать демы на ура, это как снежный ком, опыт накапливается!





Ответить с цитированием