С любовью к вам, Yandex.Direct
Размещение рекламы на форуме способствует его дальнейшему развитию
Вот интересно, а есть ли исходники загрузчиков для +3 на асме аля #3d13 или независимые от переменных? Ведь для адаптации игр, как это делалось на TR-DOS, потребуется лезть в код. Я так понимаю, если эта система похожа на MS-DOS значит монолоадеров уже сделать не получится... Для работы по адаптации софта, нужен минимальный набор инструментария уже адаптированного под эту систему: dos командер, граф.редактор, alasm, sts, hrust итд... Как я понимаю этот софт никто не адаптировал.
Последний раз редактировалось drbars; 01.06.2009 в 08:55.
в фирменном руководстве - достаточно толково разжевано все что касается работы с +3 из асма. приведены описание всех необходимых подпрограм и перечислены все входные и выходные параметры. структура диска дает возможность работать с дискетами большого обьема и я думаю возможно даже с винтом.
Amiga 1200+Blizzard 1260 72 Mb+Mtek 68030,Compozit 128, Leningrad 2,
Atari STE 1040,ZX Spectrum +2,Pentagon 48, Speccy2007 - 2 , ATAS 256k.
ZX Evo 4Mb- в строю.
Speccy2010 v1
Специалист (пока готовлюсь к восстановлению).
Это все мое!
Родное!
Все люблю на свете я! Это родина моя!
здесь можно поспорить.
Там просто справочная информация, приведен пример для вызова каталога, а вот примера элементарной загрузки и сохранения файла не приведено...
Указаны только точки входа, и параметры при входе и выходе, а что за чем нужно делать жок... Может быть по тексту и есть, но он английский и так сходу этого не видно, а примеры, как я уже говорил, непоказательные...
Мне пришлось взломать игру и посмотреть, как там все это сделано, что за чем вызывается...
Добавлено через 3 минуты
Зачем?
Инлайн ассемблер для этих целей есть. Я же не на реале крякаю, чтож я извращенец по твоему?
![]()
Последний раз редактировалось Addison; 01.06.2009 в 20:30. Причина: Добавлено сообщение
ДаЯ же не на реале крякаю, чтож я извращенец по твоему?На риале веселее курочить гамы, сам много раз так делал, поэтому про софт адаптированный и поинтересовался.
![]()
И да, и нет. Смотря чем похожа. Файлы имеют расширение так же, как и в МС-ДОС. Организация данных на диске, вполне возможно, чем-то похожа на FAT, по крайней мере, упаковка диска уже не требуется... Имеются команды работы с файлами по "*".
А во всем остальном эта система не отличается от ТР-ДОС. Она также интегрирована в Бейсик. Здесь можно поспорить, что мол ТР-ДОС не интегрирована, но ведь команды штатно выполняются из бейсика, пусть и с корявыми синтаксическими конструкциями. Я полагаю, нет никаких проблем также как и для +3ДОС для ТР-ДОС переделать бейсик 128, чтобы синтаксис при работе с диском был прямой без выкрутасов. Здесь просто исторически сложилось, что ТР-ДОС продавался, как внешняя периферия и предполагалось, что Спектрум уже никак нельзя изменить, даже в плане прошивки.
Почему это? Что мешает написать бейсик файл, где в строке REM поместить код?
Грузишь этот файл, а потом в нем уходишь по usr в код.
Есть, я написал. Правда они еще сырые, даже после последнего релиза ELITE я нашел еще один глюк, возможно в самой игре он вряд ли проявится, но в целом одна процедура там сделана не совсем корректно.
В будущем планирую написать здесь статью с рекомендациями, советами и примерами на эту тему. Но это будет после адаптации Advanced S S.
Вообще там есть о чем рассказать, так как повторюсь, фирменное описание - это не учебник и не руководство по написанию процедур загрузки и записи в машинном коде, а всего лишь справочник. Сами понимаете, справочник удобен и полезен больше как памятка, напоминание. Тем более что про адаптацию там вообще ничего не сказано.
Добавлено через 22 минуты
Ну, это как посмотреть...
Я думаю, не для кого не секрет, что игры обычно не пишутся непосредственно на ассемблере и очень часто не пишутся на машине того уровня, на которой будут в нее играть. Для Спектрума это вообще наверняка... Та же самая элита писалась для BBC-micro и не удивлюсь, если на PC или Mac. Потом исходники перекомпилировали на разные платформы. И они, скорее всего, были написаны на Си, Паскале или Фортране...
Исходя из выше сказанного, ясно, что курочить на реале - это все равно, что стрелять из пушки по воробьям... Это примерно также, если написать игру на бейсике и курочить ее через ассемблер, причем просто, чтобы заменить одну строку на другую. Это можно спокойно сделать в интерпретаторе....
В нашем случае эмулятор с инлайн ассемблером и дебагером с пошаговой отладкой позволяет фактически придти к исходникам и работать хоть и с кодом, но все же на уровне процедур игры, то есть практически на высоком уровне - паскаля, си! Иначе ты просто задолбишься что-то там менять, некоторые вещи неочевидны даже при наличии на ладоне всех регистров, стека и результата выполнения процедуры... А вслепую видя только дизассемблированный код, там вообще ничего не разберешь или разберешь со скоростью 1-2 процедуры в неделю.... На это никакого терпения не хватит, мы же не шпионские шифровки декодируем, это просто развлекалово и оно должно сравнительно легко прокатывать (получаться), иначе на это дело легко забить.
Последний раз редактировалось Addison; 02.06.2009 в 01:12. Причина: Добавлено сообщение
Ну вот, пришла пора освежить тему, да и хороший повод к этому появился! Наконец доделал Advanced Soccer Simulator. С этой игрой пришлось пройти долгий путь препятствий, к счастью все из них были успешно преодолены. Пять месяцев назад, когда я поспешно анонсировал скорый выход этой адаптации, я не думал что ее доводка затянется так надолго. При предварительном тестировании столкнулся с несколькими артефактами, которые ну ни как не поддавались объяснению из-за чего все попытки доделать эту адаптацию были прерваны на несколько месяцев. Не хотелось выкладывать недоделанную версию…
Недавно взялся вновь и смог раскрутить неподдающиеся головоломки, о которых я позднее напишу в подробном описании пройденного пути адаптации ELITE/ASS.
И так, что сделано в ASS.
1. Естественно основное – сохранение и загрузка файла состояния игры в системе +3DOS.
2. Добавлено меню «Диск». Раньше в основном меню можно было только сохранить состояние игры на ленту, подгрузка старой игры была возможна только в самом начале.
3. Выдача сообщений об ошибках при записи/чтении: файл не найден, нет диска, защита от записи, неизвестная ошибка. При удачном действие выдается - ОК!
4. Убрано первоначально меню с выбором начало/загрузка, так как потеряло актуальность, взамен него введен дополнительный запрос при старте в фирменном интерфейсе игры.
Можно было много чего добавить, идей было полно, начиная от каталога диска заканчивая изменением размера отгружаемого файла. Действительно в игре слишком тяжелый файл отгрузки аж 14кБ. Вызвано это, во-первых, резервированием 8-ми участников игры, где требуется отвести место не только под мелкие переменные, такие как количество игр, счет в банке и проч., но и под достаточно ёмкие имена игроков в команде, положение в турнирной таблице и т.п. Ну и, во-вторых, переменные состояния игры, как оказалось при анализе, разбросаны вперемешку с основным кодом игры, поэтому программист не стал заморачиваться и сделал сохранение блока, в которые попадают эти переменные. Оставим это на его совести.
Исходя из выше сказанного понятно, что можно было значительно снизить объем сохраняемого файла хотя бы за счет уменьшения числа участников до двух. Очевидно, что играть в эту игру массово компанией, как это было раньше, когда собирались дома, чтобы порубится в Спектрум, сейчас уже никто не будет. Максимум чего стоит ожидать – это если кто-то по старой памяти в одиночку решит поиграть на реале или же в эмуляторе. Я полагаю мой вариант адаптации удачнее тех, которые есть на TR-DOS. Хотя на эмуляторе можно сохранять и иными способами, отличными от стандартных. Но это уже как кому нравится. Поэтому вполне бы хватило двух трех игроков, при этом уменьшился бы файл отгрузки, и освободилось бы место в ОЗУ для введения дополнительных доработок, например, каталога диска или иных доработок – введение перерыва между таймами, модернизация меню и т.п. Были мысли сделать возврат из второго (большого) меню в основное, чтобы была возможность после загрузки отложенной партии посмотреть, что загрузилось и при желании вернуться назад и загрузить другой файл. Можно было сделать просмотр некоторых важных параметров внутри меню «Диск». Но, как и в случае ELITE, я решил сохранить по максимуму оригинальность игры и добавлять только бесспорно необходимое. Поэтому количество участников было сохранено - 8, и было внесено только то, на что хватило места.
Хотелось бы отметить один нюанс. При выборе загрузки старой игры вы попадаете в основное меню, далее необходимо войти в меню «диск» и выбрать загрузку файла. Раньше в неадаптированной версии вас сразу выкидывало на процедуру загрузки файла.
Сделать аналогично мне не хватило места, думаю это не самый плохой вариант, ведь суть первоначального запроса в том, чтобы перескочить выбор количества игроков, очковой системы и выбора команд. Это реализовано. Если вы выберете загрузку старой партии и не и не станете ее загружать, а последуете дальше, то вам по умолчанию дадут Liverpool, 4 дивизион, стандартное количество денег и трехочковую систему. Так было задумано и в оригинальной версии, если прервать загрузку старой партии брейком.
Ну и, наконец, сама версия Advanced Soccer Simulator для +3DOS.
Последний раз редактировалось Addison; 22.10.2009 в 20:16.
посмотри на WoS утилиты от Kobrahsoft (к сожалению не все программы есть в наличии). к одной есть даже небольшая брошурка по адаптации программ с ленты на диск.
ftp://ftp.worldofspectrum.org/pub/si...iscUtility.pdf
ftp://ftp.worldofspectrum.org/pub/si...iscUtility.zip
в архиве проще скачивать.
Ну вот и появилась нормальная программная поддержка для платформы ZX+3! Моими силами было адаптированно несколько игр, в том числе, и адаптация меню отгрузок в двух моих любимых играх. Несколько из них было выловлено с WOS, как незащищенные и легко копируемые. Все эти 22 игры плюс одна новая портированная с Атари лежат здесь!
И вдруг на этом скудном результате вырастают такие плоды, недавно на меня вышло несколько сторонников платформы, которые либо уже купили ZX+3 и все переделали, как я предлагал, либо планируют это сделать в ближайшие дни!!! И о чудо, еще и нарыли хороший сайт с большой коллекцией игр. Причем, игры адаптированы честно! Я специально смотрел прям по моей задумки все сделано, расширения файлов подобраны нормально, все файлы игры просматриваются обычной командой CAT, все копируется, переносится, да еще и размещено на полноценных образах 710 кб! Просто конфетка. Диски снабжены простеньким но вполне удобным бутом! Среди игр встречаются даже ХИТЫ! Например, ELITE! Ведь сколько я искал, так и не нашел ее нигде... Пришлось самому делать. К чести сказать, что версия игры даже другая не та, которую я взял за основу. Однако адаптация неполная и меню отгрузок в варианте TAP... Полагаю и другие игры не имеют адаптированных меню отгрузок. Но это нормально, все доморощенные коллекции на TR-DOS были во многом похожи. А помнится, сколько было криков всяких Летаргиков, Сцлев и т.п. типа надо адаптировать до конца, а так это халтура. Вот посмотрите, чел нашлепал не заморачиваясь и правильно сделал! А отгрузки это дело следующего этапа. Короче я счастлив таким пополнением игр и счастлив появлением новых активных юзеров ZX+3. Все-таки не зря старался и протаптывал тропинку! Go-Go!Догнать и обогнать TR-DOS!
Скачать 107 игр!
Диск №1
1. AGENT X2
2. ANARCHY
3. ARC OF YESOD
4. APB
5. ARKANOID
6. ATV-SIM
7. AUTOCRAS
8. BARBARIAN 1
9. BARBARIAN 2
10. BARBARIAN 3
11. BASKET
12. BENNY HILL
13. BIONIC COMMANDO
14. BLOCK DIZZY
15. BOMB JACK 1
16. BOMB JACK 2
17. BATTLE SHIPS
Диск №2
17. BOOVIE 1
18. BOOVIE 2
19. BOULDER DASH 1
20. BOULDER DASH 2
21. BOULDER DASH 3
22. BOULDER DASH 4
23. CABAL
24. CAPTAIN FIZZ
25. CASTLE MASTER 1
26. CASTLE MASTER 2
27. CHASE HQ
28. CHUBBY GRISTLE
29. COMMANDO,CYCLONE
30. CRAZY CARS 2
31. DAN DARE 1
32. DAN DARE 2
33. DAN DARE 3
Диск №3
34. DESTINY
35. DIZZY 5
36. DIZZY 6
37. DIZZY 7
38. BUBBLE DIZZY
39. PANIC DIZZY
40. DRILLER
41. DRAGON NINJA
42. TOTAL ECLIPSE 1
43. TOTAL ECLIPSE 2
44. ELITE
45. ESCAPE FROM THE PLANET OF THE ROBOT MONSTERS
46. EXOLON
47. FAST FOOD DIZZY
48. FINAL ASSAULT
Диск №4
49. GHOULS AND GHOSTS
50. GOLDEN AXE
51. GREEN BERET
52. GRELL AND FALLA
53. GUNHEAD
54. GUNSTAR
55. H.A.T.E.
56. HERCULES
57. HEROQUEST
58. HORACE
59. HUDSON HAWK
Диск №5
60. HUNT FOR RED OCTOBER
61. HYSTERIA
62. ICE CLIMBER
63. IKARI WARRIORS
64. INDIANA JONES 3
65. IRONMAN
66. IRON SOLDIER
67. ISC
68. JACKAL
69. JAZZY
70. JMENO RUZE
71. JUGGERNAUT
72. JW DARTS
73. LEE ENFIELD
74. 007 LICENCE TO KILL
Диск №6
75. DR MARIO
76. LONE WOLF
77. LITTLE PUF
78. MAGMAX
79. MINES
80. MINESWEEPER
81. MONACO GP
82. MOON ALERT
83. MUNCHER
84. MIDNIGHT RESISTANCE
85. NELLIE
86. NETHER EARTH
87. NIBBLES
88. OXOTA
89. PROTENIS
Диск №7
90. NAVY SEALS 1
91. NAVY SEALS 2
92. NINJA HAMSTER
93. NORTH AND SOUTH
94. PACMANIA
95. PAPER BOY 2
96. PASSIANS
97. PLATOON
98. RANGERS
Диск №8
99. RENAGADE
100. REX 1
101. REX 2
102. RICK DANGEROUS
103. RISE OUT
104. ROAD BLASTERS
105. ROLLING THUNDER
106. R-TYPE
107. R XONIX
Последний раз редактировалось Addison; 21.11.2009 в 22:55.
Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)