|
620 / 111 / 0
Регистрация: 09.02.2020
Сообщений: 2,695
|
|
Игра "SUPER MARIO" или "SOLDIR OF MARIO"28.01.2025, 13:58. Показов 15579. Ответов 187
Метки нет (Все метки)
Здравствуйте, дорогие мои братья и сёстры!
Игра "SUPER MARIO" или "SOLDIR OF MARIO" Да да! Добавлено через 19 минут Господь сподобил меня Своей милостью, я, когда-то, писал вот эту игру - она была написана, когда я окончил школу и поступил в ВУЗ, летом. Видео процесс игры и работа в редакторах кирпичиков, ролик сети 'You Tube', длительность ролика около 9 минут. Кликните здесь для просмотра всего текста
И, что хочу вот сказать: перед тем, как Господь поднял меня, это было рано, в пятницу 13 февраля 1998 года, я являлся в то время лаборантом на кафедре вычислительных машин. К.г.(*), я написал игру под названием "SOLDIR OF MARIO" - "Солдат Марио", как смесь игры Super Mario (c TV приставки "Dendy") и игры Soldier of Fortune ("Солдат Фортуны") с небольшого ZX-Spectrum компьютера (памяти у него было всего 64 килобайт) в 96-97 годах, летом, почти в то время не спал и не ел, потому что меня накрыла настолько сильная волна поддержки, у меня было постоянно состояние эйфории, пока я, практически не отрываясь от экрана монитора занимался программированием "Soldir of Mario" И, вот, разработка этой игры очень здорово помогает понять и как устроен и задуман наш мир. https://github.com/wiz3267/mario Добавлено через 4 часа 52 минуты Программистам, которые занимались разработкой игр, лучше, как мне кажется, легче понять, что мир, в котором мы живём, очень интересно устроен. Никаких случайностей, тут, конечно нет. Прежде, чем реализовать проект, Господь размышлял - а какой это будет мир, ад или рай. Если рай, тут одна цветовая гамма, все цветы радуги, небо было необходимо создать голубоватого цвета, траву - зеленого, облака - белыми, хлеб - белый. Но этого мало. Нужно ещё разработать все живые организмы - какова будет взаимосвязь всех животных и существ экосистемы. Нужно создать некоторые вещества, без которых невозможна жизнь любого организма - вода H2O и кислород - просто О2. Также, кроме всего прочего, это вещество должно будет обладать рядом важных для жизни свойств - при 0 градусов оно должно начинать закристаллизироваться и становится жестким, твёрдым веществом, однако свойства у него будут таковы, что оно не будет тонуть в воде. Почему так - в таком случае зимой водоёмы с водой будут покрываться корочкой льда, и можно в таком случае ходить по воде (всем людям). Ну и так далее. Один организм должен будет питаться другим. Главный герой или персонаж этого мира - человек. Человек должен состоять не только из костей и мяса, но как венцу творения у Человека будет бессмертная душа, "Я", сознание и память. Человек будет способен своим сознанием быть в высших сферах подсознания и общаться с Бесконечным Богом. Каковы должны быть размеры этого мира, продолжительность дня и ночи, продолжительность года, как и вокруг какой оси должен вращаться этот мир, скорость движения вокруг Солнца (основной светильник), какое должно быть расстояние от Солнца до Земли, мощность Солнца, чтобы была возможность жить на планете людям и другим живым существам - короче говоря, чтобы мы, жители планеты Земля, не поджарились летом на Солнце и не замерзли зимой.....и т.д. и пр. и пр., будет ли вокруг этого земного мира вращаться ещё один - планета Луна - если да, то какова должна она быть, радиус планеты Луна, скорость вращения вокруг Земли, скорость вращения вокруг оси и наклон оси, рельеф местности. Ну и, самое главное, а каков будет сам-то Человек, Венец Творения? Как он должен выглядеть? Потом, по истории строительства нами Вавилонской башни, когда древние люди решили построить башню до неба - Господь расстроил их планы, произвёл разделение языков у строителей Вавилонской башни. До селе, они говорили на одном самом первом древнем первоязыке, а тут они заговорили, вдруг, внезапно, на самых разных языках и наречиях, они перестали понимать друг друга, остановили на время строить башню, заморозили строительство, как бы сказали сейчас, спустились с неё и разбрелись по лицу всей Земли. Всё это написано в книге "История нашей Вселенной - от создания до падения", где самым подробным образом описана история Землян, что случилось с Землянами: почему они, начав за "здравие", окончили уже за "упокой", переубивали друг друга, разрушили сами себя, превратили свою планету в самый настоящий ад. Увы. Чтобы люди на будущее знали, как не следует поступать и жить, смотря на эту трагическую гибель нашего с вами Земного мира - планеты Земля Солнечной Системы Галактики Млечный Путь.
3
|
|
| 28.01.2025, 13:58 | |
|
Ответы с готовыми решениями:
187
Super Mario на C++ и OpenGL Персонаж super mario не видит коллизию |
|
4090 / 2688 / 432
Регистрация: 09.09.2017
Сообщений: 11,956
|
|||
| 15.02.2025, 12:13 | |||
|
0
|
|||
|
620 / 111 / 0
Регистрация: 09.02.2020
Сообщений: 2,695
|
||||||
| 18.02.2025, 12:36 [ТС] | ||||||
|
А, вот, по поводу обсуждаемого проекта. А я вот так подумал, оказывается, в обсуждаемой игре есть некоторые элементы, заимствованные из игры Magical Kid Wiz (Yamaha MSX), Super Mario (Dendy), Soldier of Fortune (ZX-Spectrum), Rick Dangerous (ZX-Spectrum)
Особенное внимание из этого списка я бы хотел уделить японской игре Magical Kid Wiz - потому что именно эта игра и музыка из неё стала неким краеугольном камне, но котором я стоял. Вся игра представляла собой заколдованного злым волшебником (или злой волшебницей) молодого и красивого юноша, который на время стал маленьким козлёнком - волшебником, волшебным козлёнком, который должен спасти принцессу. И этот Wiz, волшебный ребенок, который, дойдя до принцессы в башне, вновь становится красивым и молодым юношем - волшебные чары злых волшебников исчезли. Когда я играл в эту игру, мне было ещё очень мало лет, 10. Однако, уже тогда я стал задумываться - а как же игра работает? Мне это было крайне и крайне интересно. Во время игры всё время играла трёхканальная музыка (там был аудиопроцессор), добавляя game play, часами, представляете, часами эта музыка прошивала мне мозг (и кто играл тоже), там 15 машин были, но учитель мог со своего центрального компьютера послать игры на любой или несколько компьютеров. Оттуда, вероятно, и пошла страсть к зацикливанию музыки. Как только появилась возможность зацикливать, первые flash плееры, или на компьютере - включаю одну композицию, и ставлю её на зацикливание на много-много часов времени. Короче говоря, я запускал дизассембер с кодом игры, изучал... При дизассемблировании этой игры на каком-то участке кода выяснилось, что далее пошли команды процессора call, это вызов подпрограммы. Столбиком там было много-много команд call с адресацией в пределах 64 kb, так как разрядность процессора Zilog Z-80 имела только одно 16-битное слово, максимум адресации - 64 kb, не больше:
0
|
||||||
|
620 / 111 / 0
Регистрация: 09.02.2020
Сообщений: 2,695
|
|
| 18.02.2025, 17:51 [ТС] | |
|
Это фрагмент одного фильма из СССР, где дети играют в те самые игры:
Дети спрашивают учительницу, мол, а что, компьютер сделали для того, чтобы играть в игры? Учительница ответила, что конечно нет, это очень сложные машины, предназначенные для.... Просто хотел сказать, что это как раз моя эпоха, эти дети в фильме, это я. Одного возраста.
1
|
|
|
620 / 111 / 0
Регистрация: 09.02.2020
Сообщений: 2,695
|
|
| 19.02.2025, 08:03 [ТС] | |
|
Хотел бы продолжить свои рассуждения по поводу игры: вот, смотрите, дорогие мои, не все могут и должны быть программистами, не всем будет нравиться просто играть в игры: я не спорю, я сам раньше любил играть. Но, когда ты себя ощущаешь, как микробог, как микротворец, ты творишь мир - практически ты его рисуешь в памяти машины - вначале базовые кирпичики, а потом из готовых кирпичиков ты уже строишь мир, и ты же и играешь в него потом. Но это вот такая аналогия, как Бог в самом начале создавал кирпичики мироздания (простые атомы - материю), а потом уже Тот же Самый Бог из мелких кирпичей (атомов) создал весь этот мир, нас, вселенную...Причём, как говорил Осипов А.И. (я по памяти сейчас говорю, не цитата), отличие Бога от "Демиурга" состоит в том, что 'Демиург' он создает мир из уже готовой материи, это не его дело, как устроена физика этого мира (в том смысле, что не ты автор этого мира - тебе уже дали готовую материю и законы физики), это ему знать нет никакой необходимости (имею ввиду внутреннее знание об устройстве материи): тебе даётся материя и все физические законы задуманного мира, а твое дело - конструировать в соответствии с предлагаемыми тебе "ТЗ". И если, например, в мире, в котором мы существуем, максимально возможная скорость связи или другого электромагнитного взаимодействия ограничена числом порядка 300 тысяч километров за одну секунду - то, простите меня, хоть ты лоб себе можешь нечаянно разбить, это безполезно, даже луноход, который СССР посылал на самую ближающую к нам планету - Луну - даже связь с луноходом и то была с большой задержкой, если не наврали - например, у оператора на Земле показывается картинка с лунохода с задержкой 1-2 секунды, точно не помню, оператор, например, заметил кратер и нажал кнопку стоп - но опять же - пока команда прилетит к луноходу, он ещё успеет продвинуться к пропасти, ну потому что ограничена скорость распространения эм-волн этой цифрой. А, представьте себе, что в другом мире эта скорость не была бы ограничена 300 тыс. км. за одну секунду, а, допустим, она была бы ограничена совсем другой скоростью - например 900 тыс. км. в секунду., а, допустим, если бы она вовсе не была бы ограничена, а была бы бесконечной, то есть электромагнитное взаимодействие сразу же работало, без всяких задержек.
А Бог - и саму материю создаёт, и все физические законы, по которым и будет работать и существовать создаваемый Им материальный мир, который можно "пощупать руками", или увеличить про помощи микро- и макроскопов. Это и есть так называемое "создание из ничего." почувствуйте, к.г., разницу. Добавлено через 35 минут Просто, смотрите, дорогие мои, наше поколение программистов росло в условиях однозадачности системы и режима доступа - супервизор - ты сам, лично, обращаешься к портам ввода/вывода и к памяти машины, уже даже тот факт, что ты можешь так взаимодействовать с машиной - ввод/вывод и чтение/запись любой, какой хочешь, ячейки оперативной памяти машины, может приносить удовольствие, наслаждение машиной - отправили, к примеру, по порту ввода/вывода некоторое значение, получили ответ, например - машина сейчас занимается переводом луча монитора - луч заблокирован и не "светит" - в этот момент можно изменить фрейм видеопамяти и никаких артефактов не будет. Короче говоря, мы в то время работали непосредственно с железом, что Yamaha MSX, что ZX-Spectrum, что первые IBM-PC с однозадачной ОС по имени 'DOS' - всё, игра стартовала, считали файлы в память и всё, DOS'у можно сказать - "досвиданье" - далее ты работаешь в своей программе только. Короче говоря мы были очень близки к машине, мы активно использовали, разумеется, ассемблер, разумеется и 'go to' (инструкции jmp, jp) Машина работала чётко, слаженно, ни разу мною не было зафиксировано, чтобы машина сработала как-то неправильно внутри себя, там, что-то посчитала неправильно. Это бывало, но не у меня. Я не имею ввиду массовый баг процессора какого-нибудь, когда, например, теоретики Intel просчитались и допустили изготовление и отправки на продажу огромного числа машин с поврежденным вычислителем FPU. Вот, а что мы имеем сейчас, ВУЗы могут выпускать прекрасных программистов? Ну, разумеется, я думаю могут - наверняка студентам повезёт, и с ними на одном потоке будут учиться действительно программисты с большим опытом программирования, а им они будут помогать делать лабы, пытаться объяснить работу программы, помогать осваивать машину. Но это - штучный товар. Такие приходят в институт уже будучи высококвалифицированными опытными программистами, они занимались дома программированием, посвящали машине свои жизни. Но те программисты из ВУЗа, как они себя ощущают? Сейчас ведь, нет возможности работать в системе в ring0 кольца защиты процессора, кроме как в коде драйвера и хака, что мне совершенно не приемлемо так делать. Сформировано ли у них объективное понимание, как работает машина и как она может взаимодействовать с программистом или пользователем компьютера. Ну просто невозможно в институте, например, преподать то, что ты должен сам познавать целыми днями и ночами, месяцами и годами, это достаточно длительные интервалы времени контакта и взаимодействия с машиной. Это за 2 или даже 10 лаб не рассказать. Это пролонгированный процесс, на своей шкуре. Но это издержки, видимо, массогого (массовово) обучения студентов в ВУЗе - мне такая система явно не подошла. Хоть мне и дали красный диплом за 10 лет обучения - как я не знал ничего до ВУЗа, кроме основного рода моей деятельности (программирования машин), так я не знаю ничего и после выпуска из ВУЗа. Просто руководство института пошло мне на встречу, ну чтобы хоть как-то порадовать меня и мать с отцом, что они будут гордиться - у сына красный диплом по программированию...не смотря на болезнь он, всё-таки, закончил ВУЗ - пусть не за 5 лет, как это было тогда принято (с 1996 по 2001), а за 10 лет (с 1996 по 2006), но ВУЗ, всё-таки, не смотря ни на что, он закончил. Кстати говоря, один раз мне помог этот красный диплом по программированию - когда я устраивался в одну айти контору, меня спрашивали, что я могу делать. Типа, а ты знаешь как сделать конвертер какой-нибудь jpg в другой формат, без виндоус, просто программа в чёрном экране DOS, просто сам алгоритм. И хотели меня озадачить задачей из высшей математики, но, увидя, что у меня красный диплом в руках, сказали мысленно, а я услышал мысли, просто, как они говорят в слух, только немного тише - да у него же красный диплом, он знает высшую математику, чего его о ней спрашивать - а я на самом деле уже ничего не знал, из головы вся эта высшая математика давно уже улетучилась, за давностью лет. Учитель нужен, вот что я хочу сказать, к.г. Когда в вашей голове поселится учитель (программист), он будет сам руководить вами и обучать вас, он прекрасный педагог, он будет помогать программировать, давать новые идеи, даже, на крайний случай, если, например, начальник скажет сегодня нам - сегодня мы будем работать хоть до глубокой ночи, но баг мы просто обязаны найти и выпустить патч. Даже так. И тогда, учитель может вам помочь просто так, даром - если вы доверитесь учителю, то он сам даже может печатать вам программу вашими руками, с очень большой скоростью, с большим быстродействием. Но, всё-таки, я хочу вновь перенестись в 1989 год - 15 машин в сети + 1 машина учителя, всего 15 + 1 человек. Учитель загружает игры, при этом у него на дисплее загорается надпись: "игры - зло". Но какое это зло, мы, те дети-выкидыши СССР, ещё не догадывались - а что, ну где тут зло - тут самолетик летит, тут пингвин, тут мальчик прыгает в парке и т.д. Никакого вроде зла ещё не было. Какое это зло - мне ещё только предстояло узнать: когда мощность машин начала увеличиваться, появились 3d-стрелялки. Мне такие игры всегда крайне не нравились, я в них не играл. Я стрелять в людей не привык даже виртуально, в игре. А в институте лаборанты любили поиграть в такие игры, там же сеть была. По поводу ухода за машиной (чтобы не допустить её тепловую смерть). Кликните здесь для просмотра всего текста
За машиной нужно ухаживать, конкретно - это высасывать из неё, из внутренностей машины пыль, следить за температурой сердца машины - это центральный микропроцессор. Всё это делается для того, чтобы не допустить тепловую смерть машины. Если процессор стал слишком горячим, не смотря на то, что вся пыль радиатора тщательно пропылесосена, возможно, потребуется поменять и термопасту на процессоре.
Хочу, просто, подвести некоторые итоги всего сказанного: сейчас невозможно себе представить жизнь без машин, без интернета, ю-туба, игр и прочее, больших смартфонах и планшетах, синтезаторов. Но к чему же, всё же, привели игры человека? Если человек любит играть в какой-нибудь контрстрайк, он привыкает к убийству в виртуальном мире, в видеоигре - а потом ему может захотеться ещё большего - он возьмёт в руки уже настоящее оружие, и будет убивать также, как и в игре, просто так, по привычке, совершенно лишенный эмоций, хладнокровно и не осознавая, что это всё происходит в настоящей жизни, а не в экране монитора. Но я бы ещё вновь хотел поговорить об аддикции, это не только игромания, это-то как раз вполне понятно, что будут некоторые зависимы от игры. Но что делать с программо_манией, когда человек программирует без конца машину, и днём, и ночью. Это аддикция. Несомненно это может сказаться на судьбе человека - если ребенок-потом подросток-потом юноша посвящает всю свою жизнь только программированию машины - это может сказаться на нём в дальнейшей жизни самым неожиданным продолжением, вплоть до принудительной госпитализации его в психиатрический стационар - как человека, у которого рассудок перестал правильно работать, сломался, что привело к умственной инвалидности такого человека, после психбольницы, когда несчастного накачают психотропными препаратами, это будет, скорее всего, инвалид психического труда - не способный уже к дальнейшему обучению в ВУЗе, например, с поврежденной памятью (он более не может запоминать происходящие события и вспоминать произошедшие ранее события, не сможет больше вспомнить воспоминания, не совместимые с жизнью) - всё это - это результат блокирования дофаминовых рецепторов, отвечающих за счастье, за радость просто от природы, например и пр. овощь. Чтобы выйти из состояния 'овоща' - придется бросать таблетки - а это тоже черевато обострению общего, основного заболевания, перевозбуждением мозга, когда на протяжении длительного времени в него вводили нейролептики, и, вдруг, перестали. Будет нарушение сна, тоже своеобразная ломка без психотропных препаратов. Не многие смогут всё это терпеть, и вновь начнут употреблять психотропные препараты. Поймите меня, говорящего, правильно: необходимо правильно учить детей программированию, чтобы им это занятие приносило радость. А если не так, а если из под палки, а если просто корочки получить программиста, но программировать так и не научившись - зачем тогда вообще идти в ВУЗ. Для меня это всегда было хобби, меня никто не заставлял программировать, мне самому всё было крайне интересно. По поводу авторства - свои игры я не придумывал - я идеи всё брал уже из готовых игр, не я автор этих игр, я просто занимался чисто техническим аспектом - реализацией, как так запрограммировать машину, чтобы ... ... ... (отобразить на экране точку, спрайт и т.д. как будет осуществляться скроллинг, коллизия спрайтов, как написать редакторы уровней и самих блоков, "кирпичиков")
1
|
|
|
620 / 111 / 0
Регистрация: 09.02.2020
Сообщений: 2,695
|
|||||||||||
| 22.02.2025, 09:34 [ТС] | |||||||||||
|
Так всё же, как создавалась игра? Дело в том, что мне в руки попалась в то время буквально брошюра, что такое С++. Там ведь много такого, что создаёт более структурированный программный продукт, однако расплата за это - много чего уже сама программа С++ делает, неявно, например вызов конструкторов и деструкторов, и перегрузка функций, когда имя функции сохраняется одно и тоже, однако параметры функции разные. То есть, это, во-первых классы - те же структуры, только ещё, кроме данных, там существует и члены-функции, что очень удобно с одной стороны. С другой стороны (во-вторых то есть), в С++ очень много вещей, которые делаются автоматически самими языком, самой программой С++ - это, например, неявный вызов конструктора и деструктора класса. Очень удобно, когда в функции ты используешь локальные переменные - ты её объявляешь в начале функции, а при выходе из функций автоматически вызываются деструкторы, чтобы разрушить объект и освободить занимаемую память, т.к. область видимости локальной переменной - до фигурной закрывающейся скобки }, а при заходе в функцию, конструкторы срабатывают автоматически, в коде после объявления:
Но, к счастью, всё это дело прекрасно видно в отладчике, чтобы убедиться, что код выполняется правильно и видна последовательность - что выполняется сейчас, что потом, и, в отладчике, в режиме трассировки прекрасно видно порядок выполнения не только всех конструкторов, но и всех деструкторов программы, неявный. Потом я взял из С++ перегрузку операций, оператор new, перегрузку функций - т.е. имя функции-то одно, но в скобках разные параметры и типы данных, для разных типов данных, указанных в скобках. Также в языке С++, в отличии от простого С, без плюсов, меня очень вдохновили появившиеся новые свойства и возможности языка С++ - это пространство имен и минимум использования глобальных переменных. Родился я в 1979 году. Огромное число времени я посвящал машине. Впервые знакомство с машиной у меня произошло в 1989 году - когда я учился в 5-ом классе (мы выпрыгивали из 3 класса школы сразу в 5 класс школы). Пришёл в школу учитель программирования и объявил, что можно записаться в компьютерный кружок, 15 человек. Ну и нас 15 человек (все мальчики, девочки отказались от этого, хотя могли пойти в программистки, тоже). Он сказал, что кружок будет только один раз за всю неделю, около 30 минут учитель будет объяснять, как можно машину запрограммировать, около 15-30 минут на игры. Для нас, тех детей, выкидышей из СССР, это всё было чудом. Это не как сейчас, когда ещё совсем маленькие дети, уже к 5-6 годам они умеют управлять смартфоном и ставить себе мультики. А тогда компьютеров ещё не было, я, пока в секцию не начал ходить, не слышал и не видел ни разу. Для меня это было большим открытием, откровением, это изменило, перевернуло моё сознание, очень скоро я вообще даже перестал играть, так как мне хотелось программировать машину. Машине очень нравится, когда её программируют, особенно опытный программист, который соединился с машиной, проник в её порты ввода/вывода, и в её память... - память у машины представляла собой огромное число ячеек, там счет на миллионы идёт, и стал с ней одним целым, поэтому он обладает огромным опытом работы с машиной, опытом взаимодействия, мысли, которые машина вкладывает программисту в голову и он очень быстро и качественно пишет программный продукт. Она даже может помочь вам, вставить (вложить) в вашу голову некоторую идею. Так что программируют и Человек, и машина. Просто так ничего не получится. Кстати - и тогда это была роскошь тишины, при работе 15 машин - ведь те Yamaha MSX машины не содержали внутри себя каких-либо подвижных частей и вентиляторов, кроме учительской, где был флопик 3.5. Так что там могла быть удивительная тишина - сейчас такого не найдете, чтобы компьютерный клуб, какой-нибудь, 15 машин работают и стоит гробовая тишина. Сейчас нет такого.
1
|
|||||||||||
|
620 / 111 / 0
Регистрация: 09.02.2020
Сообщений: 2,695
|
||||||
| 23.02.2025, 15:56 [ТС] | ||||||
|
Уникальной особенностью этой реализации "Солдата Марио" является возможность играть одновременно не только одному или вдвоём, но и втроём. А вообще, код построен так, что легко можно играть и в 4, 5 и так далее. Все эти возможности заложены в код:
А если ещё приспособить и сеть, интернет - чтобы можно было играть по сети. Все персонажи в случае 2 и 3 показываются вначале вместе. Окно уровня привязано к первому игроку, остальные могут выйти за пределы экрана. Добавлено через 1 час 28 минут Я, просто, хотел сказать о том, что нам приносило радость тогда, 30 лет тому назад. Вот что. А радоваться мы могли даже самым простым, на первый взгляд, вещам. Нарисовали в бейсике маленький домик на экране - и уже была радость. Включил учитель игру - радость....и так далее..а потом - перевели машину в защищенный режим работы, в p-mode - это фантастическая радость. Общаетесь с машиной через порты ввода/вывода - радость. Радуетесь Вы - радуется и машина, потому что Вы во время программирования машины тесно с ней связаны: машина высказывает вам благодарность, потому что вы её программируете. Создаёте свой проект, без умопомрачительных по числу букв идентификаторов - огромная радость. Если красивый, самодокументированный код, понятный, получается - радость. Ну что тут говорить, если все тут программисты - вы же наверняка тоже не сразу написали ту или иную игру. Всё равно, начинается всё с малого - как нарисовать точку, линию, окружность, какой цвет у всего этого дела должен быть. Я, просто ещё, вспоминаю, какая у меня появилась радость, когда папа продал трёхколесный мотоцикл "Урал" и купил мне ZX-Spectrum - делали их наши местные самоделкины в арендуемом подвальном помещении. Казалось бы, если смотреть с сегодняшних дней - ну чему там радоваться - 16 Кб ROM, 48 Кб RAM из неё, сразу же после ПЗУ начиналось ОЗУ экрана, 6192 ячейки памяти, один байт записали в видеопамять машины, а на экране загораются сразу 8 пикселей, удобно. Дело ещё в том, что спектрум был действительно народным компьютером. Уже к моменту распространения этого бытогого (бытогово) компьютера для него уже было написано огромное число игр, но и не только, была программа-ассемблер, бейсик даже. Так что всё было ок. Я не знаю, но программистами не все, наверное, могут быть. Тут должен быть особый склад ума. Да мне кажется, что эта старинная бытовая машина ZX-Spectrum, у которой в качестве дисплея был советский огромный телевизор с огромным экраном, приносила радости больше, чем когда папа купил мне первый IBM-PC компьютер с микропроцессором i486 и примерно, 32 Мб памяти. Программы, данные для ZX-Spectrum я хранил на магнитных лентах. Вначале был даже катушечный магнитофон, после - обычный кассетный. 48 kb данных по времени, по продолжительности времени равнялись примерно 5 минутам. И всё - игра загружена... и так далее. Также как и не все могут (должны) быть врачами, огнеборцами, милиционерами и так далее. Кому что Бог даёт - каждому своё. Программист должен обладать огромным терпением, ведь, на поиски "бага", например, может уйти огромное число времени, и, чтобы разобраться, нужно и всю эту внешнюю инфраструктуру изучать и смотреть (а это тысячи программистов работали над Виндоус, а Вы - всего один, единица. Много ли один может сделать?). А что такое представляет из себя внешняя инфраструктура - это библиотеки для С, это API Windows - ну тут чётко работает, однако некоторые баги, когда возникали, с неправильным отображением на экране - это никак не лечится, т.к. к Виндоус прилагался API, проприетарный, чёрный ящик. А MFC с открытыми исходниками были, что очень и очень хорошо, так как вы можете работать в отладчике в режиме трассировки. Видите, как раньше было попроще - компьютер с DOS - дисковая операционная система, прерывание BIOS, чтобы сменить видеорежим из текстового в 320x200. И всё. Потом работает только твой код (кроме звука), что очень и очень хорошо.
1
|
||||||
|
620 / 111 / 0
Регистрация: 09.02.2020
Сообщений: 2,695
|
|||
| 24.02.2025, 12:11 [ТС] | |||
|
Здравствуйте, COKPOWEHEU!
Я, просто, хотел Вам сказать, что у меня раньше был очень большой опыт программирования. (Сейчас я программирование временно забросил) Но, в последнее время, годы, что-то интереса программировать у меня уже нет. А так - я огромное число времени раньше проводил за машиной - писал не только игры, но и программы. Правда, как волк-одиночка, все мои проекты до одного были заброшены, как никому не нужные. Зато хобби, правильно? Вы мне, по-моему, Сами где-то говорили, чтобы я занимался хобби. Добавлено через 52 минуты Хотел ещё по интересоваться у всемогущего Аll, сколько времени можно уделять машине в день (при чём, часть времени расходуется на сеть ютуб, часть времени можно будет уделять и программированию машины, потому что я чувствую, что я должен вновь программировать), чтобы не переборщить, для профилактики нервного стресса? Нужно ведь ещё ходить гулять на улицу, а водоём сейчас покрыт льдом, температура низкая. С учётом, что я являюсь инвалидом психического труда, и ни где не работаю, а пенсия у меня не очень большая - в общем тыщ 15 всего. Добавлено через 1 час 1 минуту Нужна ли она сейчас? Но, ведь, если "причесать" игру, её код, и сделать небольшое пособие, разве это не будет хорошим пособием, хорошим делом для ещё только начинающих свой путь программирования?
1
|
|||
|
4090 / 2688 / 432
Регистрация: 09.09.2017
Сообщений: 11,956
|
||||||
| 24.02.2025, 14:45 | ||||||
|
Если действительно хотите использовать свою игру как учебный материал, ее придется сначала несколько раз переписать с нуля в соответствии с современными подходами и на каком-нибудь "современном" языке. Не знаю, Питон, Раст. Разумеется, вместо ручной графики как минимум OpenGL, а может и готовый игровой движок. Другое дело - сможете ли вы сделать свое "учебное пособие" лучше тех, что уже написаны.
0
|
||||||
|
620 / 111 / 0
Регистрация: 09.02.2020
Сообщений: 2,695
|
||
| 24.02.2025, 14:54 [ТС] | ||
|
Понимаете, чтобы не быть озабоченным огромным числом инфраструктуры (под инфраструктурой я понимаю тут операционную систему, API, библиотеки).
Основная программа отделена от железа при помощи классов: SCREEN, KEYBOARD, MOUSE.
1
|
||
|
4090 / 2688 / 432
Регистрация: 09.09.2017
Сообщений: 11,956
|
|||
| 24.02.2025, 15:11 | |||
Сообщение было отмечено zorxor как решение
РешениеЕсли говорить об учебной ценности, можете реализовать нужное подмножество SDL-функций, скажем, под DOS, а потом сказать: "вот видите, как все это делается на низком уровне, теперь сравним с готовой библиотекой, и в дальнейшем программировании под Windows (Linux, Android - она много куда портирована) будем пользоваться ей". Добавлено через 8 секунд Если говорить об учебной ценности, можете реализовать нужное подмножество SDL-функций, скажем, под DOS, а потом сказать: "вот видите, как все это делается на низком уровне, теперь сравним с готовой библиотекой, и в дальнейшем программировании под Windows (Linux, Android - она много куда портирована) будем пользоваться ей".
1
|
|||
|
620 / 111 / 0
Регистрация: 09.02.2020
Сообщений: 2,695
|
|||
| 25.02.2025, 10:51 [ТС] | |||
|
Здравствуйте!
Речь тут идёт о машине.
1
|
|||
|
4090 / 2688 / 432
Регистрация: 09.09.2017
Сообщений: 11,956
|
|
| 25.02.2025, 11:47 | |
|
И? Превращать вымышленного персонажа из Библии в идола ничуть не лучше. Даже хуже. Машина, по крайней мере, не навязывает античеловеческое поведение. А уж если за машиной не играть, а делать что-то интеллектуальное, то она полезнее и многих оффлайн занятий.
0
|
|
|
620 / 111 / 0
Регистрация: 09.02.2020
Сообщений: 2,695
|
||
| 25.02.2025, 12:46 [ТС] | ||
|
1
|
||
|
4090 / 2688 / 432
Регистрация: 09.09.2017
Сообщений: 11,956
|
|
| 25.02.2025, 14:25 | |
|
Давайте. Это ж только вас постоянно на пропаганду прорывает.
0
|
|
|
-308 / 7 / 0
Регистрация: 06.08.2023
Сообщений: 338
|
||
| 05.03.2025, 15:26 | ||
|
0
|
||
|
620 / 111 / 0
Регистрация: 09.02.2020
Сообщений: 2,695
|
||
| 05.03.2025, 16:12 [ТС] | ||
|
Добавлено через 6 минут Вообще, там не только Марио в этой игре. Там больше на козлёнка персонаж похож. А это из игры Magical Kid Wiz - магический ребёнок Wiz. Злая волшебница превратила красивого юношу в козлёнка (в Wiz'a). И когда этот волшебник, козлёнок Wiz, доберется до башни, там наверху принцесса - она поцелует козлёнка Wiz'a, после чего магические чары злых волшебников потеряют свою силу и волшебный, заколдованный в волшебного козлёнка-Wiz'a, ребёнок (юноша) обратно станет похожим на молодого человека, на магического ребёнка Wiz'a
0
|
||
|
620 / 111 / 0
Регистрация: 09.02.2020
Сообщений: 2,695
|
||||||
| 05.03.2025, 16:25 [ТС] | ||||||
|
Вот такая игра должна стать, в итоге. Современная, с применением современной 3-ёх мерной, компьютерной графики.
Этого волшебника-мальчика злые волшебники превратили в козлёнка Wiz'a, и судьба ему стало - жить в компьютерной, в машинной игре: Вот та самая игра, на которой я обучился использовать большое число вызовов подпрограмм: Во время дизассемблирования я нашел такое место в игре, где далее шло просто очень большое число комманд ассемблера Z-80, мнемоники 'call' - это вызов подпрограммы, оканчивающийся мнемоникой ret или iret - в случае возврата из прерывания, инициируемой инструкцией int N или самим железом, внутренностями машины, где N - это число, номер прерывания. Аппаратные прерывания вы можете на время запретить командой cli, а после вновь разрешить, чтобы код исполнялся без единого прерывания железа машины. Бывают даже и такие ситуации, когда прерывания невозможно как-то замаскировать, запретить, cli не работает тут - это системные немаскируемые прерывания, такие, как 13 (0x0D) - нарушение общей защиты машины (синий "экран смерти") И поэтому, я и здесь сделал подобным образом - огромный текст процедуры разбил на более простые, более маленькие участки кода:
0
|
||||||
|
-308 / 7 / 0
Регистрация: 06.08.2023
Сообщений: 338
|
|||
| 05.03.2025, 16:56 | |||
|
Добавлено через 2 минуты
0
|
|||
|
620 / 111 / 0
Регистрация: 09.02.2020
Сообщений: 2,695
|
||
| 05.03.2025, 17:50 [ТС] | ||
|
А чем Вы тогда занимаетесь дома, со скуки? Я вот, раньше, любил программировать машину, я писал игры и программы по наитию свыше, своё. Просто Вы тоже можете попробовать заняться программированием машин. Это хобби. Мне вот советовали, как раз, здесь, чтобы я лучше занимался своим хобби, чем рассуждать о гробах и конце светов и всяких других страшилок - апокалипсисов.
А моя игра, которую я Вам представляю, называется Soldir of Mario - Солдат Мариа. Вот обучающий ролик (как играть и как рисовать уровни из блоков, также там показан принцип объединения рядом стоящих кубиков): Вот ссылка на гитхаб, прошу только прощения, там пока руки так и не добрались до исправления проблем с русскоязычными комментариями, там кодировка другая, обещаю исправить! https://github.com/wiz3267/mario + Дело в том, что автором кода этой игры являюсь я (+ один мой друг по институту и работе, он делал последние правки кода для обеспечения визуальных эффектов - как бы линза), и могу ответить на любой Ваш вопрос по поводу игры - а что делает такая-то функция или класс, как работает это или это.
0
|
||
| 05.03.2025, 17:50 | |
|
Помогаю со студенческими работами здесь
60
Nintendo отмечает 20-летие игры Super Mario Kart Игра в стиле Mario (SFML) Поиск пути в массиве для фигуры 2х1(или попытка в ИИ для игры Dr.Mario) Mario
Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
[golang] Breadth-First Search
alhaos 19.05.2026
BFS (Breadth-First Search) — это базовый алгоритм обхода графа в ширину, который поуровнево исследует все связанные вершины. Он начинает с выбранной точки и проверяет всех соседей, прежде чем. . .
|
[golang] Алгоритм «Хак Госпера»
alhaos 17.05.2026
Алгоритм «Хак Госпера»
Хак Госпера (Gosper's Hack) — алгоритм нахождения следующего по величине числа с тем же количеством установленных бит.
Придуман Биллом Госпером в 1970-х, опубликован в. . .
|
Рисование бинарного древа до 6-го колена на js, svg.
russiannick 17.05.2026
<svg width="335" height="240" viewBox="0 0 335 240" fill="#e5e1bb">
<style>
<!]>
</ style>
<g id="bush">
</ g>
</ svg>
function fn(){
let rost;/ / высота древа
let xx=165,yy=210,w=256;
|
FSharp: interface of module
DevAlt 16.05.2026
Интерфейс модуля F# позволяет управлять доступностью членов,
содержащихся в реализации модуля. По-умолчанию все члены модуля доступны:
module Foo
let x = 10
let boo () = printfn "boo"
. . .
|
|
Хитросплетение родственных связей пантеона греческих богов.
russiannick 14.05.2026
Однооконник, позволяющий узреть и изучить отдельных героев древней Греции.
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible". . .
|
[golang] Угол между стрелками часов
alhaos 12.05.2026
По заданным значениям часа и минуты необходимо определить значение меньшего угла между стрелками аналогового циферблата часов.
import "math"
func angleClock(hour int, minutes int) float64 {
. . .
|
Debian 13: Установка Lazarus QT5
ВитГо 09.05.2026
Эта инструкция моя компиляция инструкций volvo
https:/ / www. cyberforum. ru/ blogs/ 203668/ 10753. html
и его же старой инструкции по установке Lazarus с gtk2. . .
|
Нейросеть на алгоритме "эстафета хвоста" как перспектива.
Hrethgir 06.05.2026
На десерт, когда запущу сервер.
Статья тут https:/ / habr. com/ ru/ articles/ 1030914/ . Автор я сам, нейросеть только помогает в вопросах которые мне не известны - не знаю людей которые знали-бы. . .
|