Приставки > Железо
ПК-01 Львов. Незаслуженно забытый.
<< < (4/4)
MetalliC:

--- Цитата: Zelya ---Другие компы имели проц пошутсрее, либо видеопамяти поменьше,
--- Конец цитаты ---

это да, но процы были немножко шустрее, а видеопамяти не в 10 раз поменьше, так что для игр со статичными задниками от видеосистемы Львова я вижу только плюсы (читай: спектрум-форевер игры типа Dizzy или Exolon на Львове более чем реально сделать лучше, красивее и красочнее чем на всяких спектрумах)

--- Цитата: Zelya --- либо аппаратную поддержку спрайтов, либо все вместе взятое
--- Конец цитаты ---

увы, такие у нас вообще не водились в те годы


--- Цитата: Zelya --- А "Львов" даже аппаратных прерываний-то не имел.
--- Конец цитаты ---

а млин почему ? если для их реализации достаточно копеечного чипа 155/555/1533/итп серий, самого базового умения обращаться с паяльником и 15мин времени.
я реально не понимаю почему никто этого не сделал, ума или особых познаний там не надо (говорю как чел, доработавший клон спектрума "Ленинград-2 128" до полной потактовой совместимости с "Пентагон 128", своим умом и при этом (почти) не имея познаний в электронике на тот момент)
Zelya:

--- Цитата: MetalliC ---это да, но процы были немножко шустрее
--- Конец цитаты ---

Тут не только герцы замешаны. Например теневой набор регистров и копирование блоков памяти в Z80 сильно облегчали жизнь.


--- Цитата: MetalliC ---а видеопамяти не в 10 раз поменьше
--- Конец цитаты ---

Ну, более чем в два раза. Считайте, отрисовка уже в два с половиной раза медленнее.


--- Цитата: MetalliC ---так что для игр со статичными задниками от видеосистемы Львова я вижу только плюсы (читай: спектрум-форевер игры типа Dizzy или Exolon на Львове более чем реально сделать лучше, красивее и красочнее чем на всяких спектрумах)
--- Конец цитаты ---

Таки да. Для статичных картинок пользовались. Хотя для 4-х цветов нужно было из кожи вон вылезать (против 15-ти спектрум-форевер). Но дизеринг - наше все:




--- Цитата: MetalliC ---увы, такие у нас вообще не водились в те годы
--- Конец цитаты ---

Ну так у нас и мигание было в порядке вещей, кроме буржуйского спекки.


--- Цитата: MetalliC ---
а млин почему ? если для их реализации достаточно копеечного чипа 155/555/1533/итп серий, самого базового умения обращаться с паяльником и 15мин времени.
я реально не понимаю почему никто этого не сделал, ума или особых познаний там не надо (говорю как чел, доработавший клон спектрума "Ленинград-2 128" до полной потактовой совместимости с "Пентагон 128", своим умом и при этом (почти) не имея познаний в электронике на тот момент)
--- Конец цитаты ---

Ну, в ПК-01 его не предусмотрено разработчиком. Я задавал вопрос про прерывания уважаемому Пуйде. На что он ответил:


--- Цитата ---Насколько я помню, то линия INTА с системного контроллера и INTE с процессора выведены на контакты системной магистрали для обслуживания дополнительных внешних устройств (программно это предусматривалось уже в ПК-01М и ПК-02)
--- Конец цитаты ---

В то время в закрытой стране было трудно предвидеть, как сделать правильно. А вот аматорская доработка ПК-02 (Z80, дисковод, 512х256, до 512  Кб ОЗУ и еще пару фич) уже имела прерывания. Но тут уже вопрос своместимости. Все-таки, большинство пользователей поначалу имело именно заводскую модель, без доработок. И писать софт под прерывания, значило потерять бОльшую часть аудитории.
AlexTV:
Аж слеза навернулась. Мой первый комп. Сам писал на него игры, жаль, наверняка ничего не сохранилось.
Zelya:
AlexTV,
Добрый день! Расскажите, пожалуйста о себе? Авось и найдутся Ваши игры. А еще луче напишите рассказик "Львов" глазами...
MetalliC:

--- Цитата: Zelya ---Тут не только герцы замешаны. Например теневой набор регистров и копирование блоков памяти в Z80 сильно облегчали жизнь.
--- Конец цитаты ---

теневой набор регистров дествительно позволял делать код быстрее, но расширенный (относительно i8080) набор комманд - почти нет, т.к. они зачастую жрали оч неприлично тактов.
копирование блоков, если я правильно понял речь о комманде LDIR - вообще моветон, перенос каждого байта длится аж 21 такт, а копирование при помощи стека аж в два раза быстрее.

имхо во всех нормальных играх, и во всех демо, на спеке отрисовка графики именно так и делалась - устанавливаем SP на спрайт в памяти, коммандами POP читаем данные во все доступные регистры (надо признать второй их набор тут сильно помогал), устанавливаем SP в нужный адрес экрана, пишем данные коммандами PUSH, повторяем процесс после приращения источника/приемника.
также активно использовалось разворачивание циклов (т.е. генерация кода в память на этапе инициализации), самомодификация кода, использование таблиц с адресами экранной памяти и тому подобное.
и главное - не использовать расширенных (с префиксами ED, CB, DD, FD) комманд! потому что они выполняются ощутимо дольше "обычных".

так что критичные по времени места игр или демок чуть менее чем полностью состояли исключительно из i8080 кода.

--- Цитата: Zelya ---Ну, в ПК-01 его не предусмотрено разработчиком.
--- Конец цитаты ---

нах разработчиков, разговор про пользователей, для спекки, вектора, БК, РК86 и многих других популярных компов сами люди наворотили же тысячу и одну доработку или доп.плату, а для Львова почему-то не была сделана даже такая банаьность как кадровое прерывание.
Добавлено позже:

--- Цитата: Zelya ---И писать софт под прерывания, значило потерять бОльшую часть аудитории.
--- Конец цитаты ---
зачем терять аудиторию, ничего же не мешает сделать настройку с вкл/выкл использования этой фичи ?
Zelya:
Без сомнения PUSH/POP - самый великолепный метод для достаточно  быстрой работы с массивом данных. Но это уже профессиональный уровень, коего на постсовете на рубеже 80-х/90-х практически не было. Это сейчас мы такие "вумные", что пишем ГУИ оси с вытесняющей многозадачностью под Z80. А гляньте на сорсы первой половины 90-х: тут Вам повсеместно расширенные команды, и LDIR не такой уж редкий гость. Только дело в том, что Z80 с 6,5 Кб видео прощал некоторое невежество, а i8080 с 16 Кб видео уже мерцал.


--- Цитата ---а для Львова почему-то не была сделана даже такая банаьность как кадровое прерывание.
--- Конец цитаты ---

Вы невнимательны, я уже писал:


--- Цитата ---А вот аматорская доработка ПК-02 (Z80, дисковод, 512х256, до 512  Кб ОЗУ и еще пару фич) уже имела прерывания.
--- Конец цитаты ---

А вот включать/отключать использования этой фичи - это из области фантастики. Нет, конечно это можно сделать, но это же сердце движка! Кто будет на него вешать опцию?! Опцию можно повесить на звук, на цвет, на логику, даже на размер экрана. Пример - рекомпиляции игр для "Львова" с MSX. Они определяют, если комп - ПК-02: добавляется звук через AY. Но кто вешает опцию на самую быструю и хрупкую часть?!
MetalliC:

--- Цитата: Zelya ---Но это уже профессиональный уровень, коего на постсовете на рубеже 80-х/90-х практически не было. Это сейчас мы такие "вумные", что пишем ГУИ оси с вытесняющей многозадачностью под Z80. А гляньте на сорсы первой половины 90-х: тут Вам повсеместно расширенные команды, и LDIR не такой уж редкий гость.
--- Конец цитаты ---

подобные приемы кодинга уже были в польских демках 90-92годов, там же и были подсмотрены нашими, и в поседствии еще более улучшены, что вылилось в море интро/демо на постсоветской спектрум-сцене начиная года этак с 93го. а поскольку большинство отечественных гейммейкеров были еще и сценерами, то в играх использовалась та же техника.


--- Цитата: Zelya ---Вы невнимательны, я уже писал:
--- Конец цитаты ---

это я конечно видел, но ПК-02 это уже тотальная переработка, даже новая модель, а я имел в виду фанатские доработки, небольше но добавляющие оч интересный функционал (например как Covox для ПК или спекки)

--- Цитата: Zelya ---А вот включать/отключать использования этой фичи - это из области фантастики. Нет, конечно это можно сделать, но это же сердце движка!
--- Конец цитаты ---

использовать эту опцию проще простого - добавить комманду HALT перед началом отрисовки кадра, ну или без халта если юзер не включил эту опцию.
Добавлено позже:
кстати, элементарно делается и проверка наличия такой фичи вообще без вмешательства игрока -
прописываем в обработчик прерывания наш код, взводящий флажок где-то в основной программе;
разрешаем прерывания и крутимся в пустом цикле эдак с пол секунды;
проверяем флажок - если значение изменилось знач прерывания работают и их можно использовать
Zelya:

--- Цитата ---подобные приемы кодинга уже были в польских демках 90-92годов, там же и были подсмотрены нашими, и в поседствии еще более улучшены, что вылилось в море интро/демо на постсоветской спектрум-сцене начиная года этак с 93го. а поскольку большинство отечественных гейммейкеров были еще и сценерами, то в играх использовалась та же техника.
--- Конец цитаты ---

Позволю себе частично не согласится. Хардкорный стиль (характерный для демок, иногда для системного софта) довольно медленно и далеко не всегда перебирался в игрострой. Это характерно не всех платформ. Мою точку зрения подтверждает человек, проводивший адаптации Спектрум игр для ПК-02 в 90-е: "практически все игры, которые я адаптировал со Спекки, активно использовали LDIR, да и расширенный набор команд юзали спокойно."


--- Цитата ---это я конечно видел, но ПК-02 это уже тотальная переработка, даже новая модель, а я имел в виду фанатские доработки, небольше но добавляющие оч интересный функционал (например как Covox для ПК или спекки)
--- Конец цитаты ---

ПК-02 - это именно сборище фанатских доработок. Официальный производитель к этому комьютеру отношения не имеет. А вот добавлять только прерывания не имело особого смысла, тем более это все-таки не так просто, как Вы расписываете. Обычно доработками занимались любительские канторки, которые проводили комплексный апгрейд.
Сравнение с Covox мне не нравится. Во-первых, Covox действительно прост - 9 резитсоров даже я "склеить" могу, во-вторых это внешнее расширение, не требующее перепайки платы, в-третьих - это опциональная вещь, отсутствие которой не мешает работе софта с ее поддержкой.


--- Цитата ---использовать эту опцию проще простого - добавить комманду HALT перед началом отрисовки кадра, ну или без халта если юзер не включил эту опцию.
--- Конец цитаты ---

В таком случае, нам надо учесть, что 50 fps мы держать не сможем. Для прерываний удобно написать логику, что именно мы выводим при данном прерывании. Но эта логика будет избыточной для движка без прерываний. Мало того что такая поддержка замедляет работу программы в критических точках, так еще это потенциальное место багов, которые очень неудобно будет отлавливать.
beliK:
 решил не создавать новую тему и спросить тут:
 нашел сегодня на чердаке "ПК-01 Львов" вот такой подключил к телеку, через RGB
 комп запускается, но после заставки с приветствием появляется какая-то непонятная хрень:
 _______________________________________________________________

               BASIC 2.0 ПК-01 'ЛЬВIВ'
 ?SN
 ?SN
 ?SN
 ?SN
 ?SN
 ?SN
 ?SN
 ?SN
 ?SN
 ?SN
 ?SN
 ....и так бесконечно

 на нажатия клавиш не реагирует, кроме сброса
 пдскажите пожалуйста, может знает кто-нибудь в чем неисправность?
Гламурная киса:
Возможно где-то в клавиатуре замкнут контакт.
Я не шарю Васик Львова, но мне кажется это команда арифметической операции сигнум (аналог SGN на спектруме).
Возможно клавиша с данной командой зажата.
Zelya:
beliK,
Простите, что отвечаю с опозданием. Но проблема для меня - загадка. Я думал, что залипла клавиша, но найти клавишу с таким результатом не смог. Поинтересовался на форуме, на что получил лаконичный ответ:

--- Цитата ---Возможно дело не в клавиатуре, или не только в клавиатуре.
--- Конец цитаты ---
Если будут идеи, обязательно сообщу.
ShadowFlash:
Ну для начала надо напоить его спиртом. Кроме шуток - промыть плату и почистить клавиатуру. Не поможет - смотреть в сторону непропая и конденсаторов.
Была БКшка, при включении начинала булькать и выдавать букву Е - обнаружилось пятно окислов, замкнувшее два вывода микросхемы.
Для "чердачной" техники - распространенное явление.

Но то, что оно заводится - это очень хорошо, в любом случае можно будет починить. Максимум ценой замены одной микросхемы (не смотрел схему этой машинки, не знаю как там контроллер клавиатуры сделан, но могло полететь именно оно).
beliK:
запускал эмулятор, так там при запуске сразу после включения под надписью BASIC 2.0 ПК-01 'ЛЬВIВ' даже если зажата какая нибудь клавиша появляется GO вот так это выглядит:

              BASIC 2.0 ПК-01 'ЛЬВIВ'
GO

у меня же сразу ?SN...
так что врядли это клавиша залипла.
Может проблема в питании? потому что подключал к этому блоку питания Сегу МД1 оригинал к +12В напряжение сразу падает до 5ти вольт и приставка не запускается, или просто Львов меньший ток требует?
Zelya:
beliK,
У "Львова" питание очень капризное (если там оргининальный процессор). i8080 потребляет +5V, -5V, +12V. Причем подавать их надо в определенном порядке, иначе проц сдохнет. Хотя, если б у Вас были проблемы с процом, то вряд ли б появилась надпись BASIC 2.0 ПК-01 'ЛЬВIВ'...
beliK:
БП "родной", просто подумал, может подгоревший, раз так садит напряжение...
Rumata:

--- Цитата: beliK от 30 Октябрь 2012, 19:16:13 ---БП "родной", просто подумал, может подгоревший, раз так садит напряжение...

--- Конец цитаты ---
Это ж надо было додуматься :lol: Так действительно и спалить можно, хотя по ходу в БП есть защита от перегрузки.
Вообще основное потребление идёт по цепи +5, а источники +12 и -5 воспомогательные, по сути нужны только для ВМ80 и ГФ24
Есть подозрение, что это сообщение об ошибке. Системное. В ПЗУ есть подобные коды, но расшифровка их не ясна.
Попробуй так:

--- Цитата ---6.1.6. Тестирование ОЗУ, ПЗУ
1) нажать клавишу СУ (удерживать);
2) нажать и отпустить клавишу СБР.
При неисправности выдается звуковой сигнал.
Если ПЭВМ исправна, то на экране стирается изображение и появляется сообщение:
BASIC 2.0 ПК-01 'ЛЬВIВ'
GO
--- Конец цитаты ---

cool gamer:
Была, была такая машинка. Адски тормозная, что неудивительно, с такой-то организацией видеобуфера. Особо попрограммировать не довелось, только лишь на барсике; асм как раз только начинал изучать (если бы на тот момент не знал барсика, скорее всего дело бы лучше шло, а так постоянно пытался провести аналогии, что каждый раз заканчивалось разрывом шаблона; все-таки асм и яву очень разные вещи).

ЗЫ. вспомнил прикольную фичу - прямо из барсика можно было мутить спецэффект как при рестарте, причем с произвольным текстом (с учетом длины). Если набрать "ПК-01\nЛЬВIВ" и воткнуть перед стартом игры, то можно было немного потроллить народ (ессно, шутка на один раз).
Zelya:
Как побить мировой рекорд за 10 шагов

Шаг 1:

Идем на сайт http://lvovpc.ho.ua

Шаг 2:

Регистрируем аккаунт (если его нет)


Шаг 3:

Заходим на сайт


Шаг 4:

Идем в игротеку


Шаг 5:

Проматываем вниз, до таблички "Best of the Best"


Шаг 6:

Выбираем любую понравившуюся игру и кликаем на название

Шаг 7:

На страничке игры кликаем кнопку "Play"


Шаг 8:

В окне эмулятора появится игра


Шаг 9:

Показываем класс в прохождении. Внимание! Чтобы рекорд записался, нужно обязательно доиграть до "Game Over" или другой, предусмотренной игрой, концовки. Даже если Вы установили рекорд, но выключили эмулятор, не доиграв, результат не сохранится.

Шаг 10:

Обновляем страничку игры, и любуемся на свои достижения


Поздравляем!!! Теперь Вы знаменитость!
Навигация
Главная страница сообщений
Предыдущая страница

Перейти к полной версии