Здравствуйте, IID, Вы писали:
IID>Как ты умело из "гениального электронщика" опять сделал "просто хорошего", а следом и самого обычного (дофига их было), и свёл всё к гениальности Джобса.
Блин... Ну ты вообще представляешь, насколько порядков схема Apple-1 проще хотя бы одного процессорного модуля их современника IBM-360? Мне доводилось ремонтировать приставку Atari на том же проце что и Apple-1 и тот самый процессорный модуль от советской EC-1033... В общем, поверь на слово... В схемотехнической части первые компы Apple были сверх-элементарны. По сложности и уникальности схемотехнических изделий уступали даже некоторым промышленным накопителям на жестких дисках того времени, выполненных на аналогичных по мощности микропроцессорах...
В общем, подключить порты и память к 6802 много ума не надо... Скорее, ровно наоборот... У него даже генератор тактовой внутри выполнен и внешняя обвеска давалась готовая в виде чипа-компаньона. Вся фишка в том, что Apple II имел претензию на "нифига себе" со своим полноценным графическим дисплеем для персонального компьютера в 77-м. Это было неслыханно! Короче, вся "гениальность" заключалась в безрассудной для того времени ставке на полноценную графику для персональных ЭВМ. Причем, на таком "безрассудстве" настаивал именно Джобс. И не прогадал! В Европе это бы не влетело ни под каким соусом... Дык, оно и не взлетело. Вышедший аж 5 лет спустя (!!!) ZX Spectrum имел компромиссную полу-графику (всего 2 различных цвета в квадрате 8x8 пикселей) и при этом стал бешено популярным в Европе еще на 10 лет. Потому что дешевый, в отличие от Apple или IBM PC. Штаты довольно легко приняли завышенную цену первых персональных компов и позволили основателям фирмы стать миллионерами почти сразу. Это надо понимать, почему в Штатах тогда было именно так. Золотые их года, однако...
В общем, сопоставление характеристик компов в Европе/Штатах + календарных годов выпуска объясняет многое, а твои эмоциональные пассажи не объясняют ничего.
IID>Понимаешь ли, тогда эти радиодетали стоили безумных денег. Спроектировать схему это даже не 10% дела. Надо ещё сделать её максимально дешёвой и повторяемой в условиях серийного производства.
Нет и еще раз нет... Радиодетали никогда не стоили безумных денег. Ну разве что розничная накрутка ~30-40%. Дык, покупай партию, чем больше партия, тем дешевле. В любом случае, розничная накрутка не десятки тысяч %%, поэтому многие могли себе позволить покупать процы и память для экспериментов. Что характерно, для разработки модели компа вовсе не требовалось 64к оперативки (половина стоимости всего компа по тем временам).
IID>А это уже требования на несколько порядков круче. Про "фактически те же технологии" ты тоже не прав. Как минимум в 81-ом году Синклер запихал основную часть схемы компьютера в заказную ULA (Uncommited Logic Array), серъёзно снизив цену компьютера и побив несколько психологических рекордов (сначала компьютер дешевле 100 GBP, а затем компьютер дешевле 100 USD). Такие чипы выпускаются только большими партиями и одиночкам недоступны.
Ну так это уже 81-й год, когда популярность персоналок была доказана. В любом случае, схемотехника заказного чипа была отлажена на макете из рассыпух. И в том макете было всего ~20 шт микросхем (у Z80 не было чипа-компаньона). Да и чип заказной был не FPGA, а гибридный. Что это, объяснять надо? Т.е. там была абсолютно та же рассыпуха, просто в бескорпусном виде на подложке, залитая затем одним объемом пластика. Заметь, в Европе делают Синклер, а в штатах одновременно IBM PC. В Европе гибридная пластиковая несменяемая хрень, а штатах триумф шины ISA для персоналки...т.е. огромной кучи плат расширения... Тут сравнивать нечего.
IID>Да причём тут предыдущие годы. Дисковод разрабатывался с нуля. И Возняк его сделал совершенно без Джобса. Это был реальный технический прорыв, оставивший конкурентов на несколько лет позади.
Мде... В 77-м дисковод с 0-ля??? Ты где такую траву берешь-то? Не читай околокомпьютерных журналюг, мой тебе совет. Контроллеры жестких дисков всяко посложнее были, и порой больше, чем на одном аналогичном проце. Просто кто-то должен был поставить задачу, что вот, мол, ставим гибкие диски в персоналки! Вместо записи программ на аудио-кассеты. И фигли там было разрабатывать, если 6802 имеет фиксированное время исполнения команд? На таких именно процах и делают блоки-замену автоматики. Например сейчас в этой нише популярны PIC и AVR микроконтроллеры.
V>>Apple-1 — это был больше "конструктор" для радиолюбителей, чем компьютер. IID>Причём тут Apple-1 ?
О да... совсем не при чем...
V>>Именно на волне популярности радиолюбительства они и взлетели... смогли заинтересовать инвестора затем, чтобы сделать кучу коммерчески важных вещей для Apple-II: V>>- логотип V>>- элегантный пластиковый корпус V>>- деньги на выпуск первой партии, исправление ошибок и выпуск следующих партий... IID>Ты считаешь что пользователи тех лет идиоты и выбирали машину исключительно из-за элегантности корпуса ?
При прочих равных, при покупке монитора, например, отдам предпочтение более радующему глаз. И это при том, что сейчас все модели соревнуются во внешней привлекательности, одна модель другой краше. Но на тот момент конкуренты Apple-II выглядели как цинковые ящики с кнопками. Я даже не знаю, что тут можно обсуждать.
IID>Это вообще не относится к обсуждаемой теме. То что Джобс вытянул Эпл из жопы не является автоматической индульгенцией.
При чем тут вытянул? Он ее создал. Из воздуха. Не боялся впихивать возможностей в свои компы и не прогадал поначалу. Потом, правда, дважды обжегся, когда пробовал пойти по экстенсивному пути, вместо создания новых поколений устройств (что у него неплохо выходило).
Здравствуйте, vdimas, Вы писали:
V>Здравствуйте, IID, Вы писали:
IID>>Как ты умело из "гениального электронщика" опять сделал "просто хорошего", а следом и самого обычного (дофига их было), и свёл всё к гениальности Джобса.
V>Блин... Ну ты вообще представляешь, насколько порядков схема Apple-1 проще хотя бы одного процессорного модуля их современника IBM-360? Мне доводилось ремонтировать приставку Atari на том же проце что и Apple-1 и тот самый процессорный модуль от советской EC-1033... В общем, поверь на слово... В схемотехнической части первые компы Apple были сверх-элементарны. По сложности и уникальности схемотехнических изделий уступали даже некоторым промышленным накопителям на жестких дисках того времени, выполненных на аналогичных по мощности микропроцессорах...
В этом и есть гениальность тех решений. Наворотить схему на сотне корпусов, особо не заморачиваясь, много ума не надо. Это как с программированием. Берём задачу и делаем её как есть, особо не выдумывая. В итоге будет тонна инструкций. Либо тщательно взвешиваем каждый битик и получаем шедевр минимализма и простоты. Посмотри, например, демки 128 или 256 байт. А потом реализуй подобное на любимом ЯВУ. Подозреваю, что даже в десятки килобайт не уложишься, хотя реализуешь быстро и не напрягаясь.
V>В общем, подключить порты и память к 6802 много ума не надо... Скорее, ровно наоборот... У него даже генератор тактовой внутри выполнен и внешняя обвеска давалась готовая в виде чипа-компаньона. Вся фишка в том, что Apple II имел претензию на "нифига себе" со своим полноценным графическим дисплеем для персонального компьютера в 77-м. Это было неслыханно! Короче, вся "гениальность" заключалась в безрассудной для того времени ставке на полноценную графику для персональных ЭВМ. Причем, на таком "безрассудстве" настаивал именно Джобс. И не прогадал!
Там много чего инновационного было. Дисковод например. Полноценность дисплея, кстати, сильно преувеличена:
Графический цветной, с разрешением 280 на 192 пикселя при 6 цветах. Благодаря особенностям стандарта NTSC схема видеоконтроллера была весьма простой (хотя это и накладывало серьёзные ограничения на качество изображения), биты в области памяти, отведённой под графический экран непосредственно ставились в соответствие фазе сигнала. Цвета кодировались следующим образом: два бита с значением 11 давали две белые точки в строке, 00 — две чёрные. 10 — красную или голубую в зависимости от старшего бита байта + чёрную, 01 — чёрную + зелёную/пурпурную в зависимости от значения старшего бита. Таким образом, однородное закрашивание было возможно только белым или чёрным цветом;
Во время обратного хода луча развёртки видеоконтроллер продолжал инкрементировать адреса памяти, из-за чего после каждой текстовой или графической строки в памяти располагались неиспользуемые байты (некоторые программы использовали их для хранения своих данных).
V>В Европе это бы не влетело ни под каким соусом... Дык, оно и не взлетело.
Не пори чушь. ZX-80, будучи гораздо более примитивным (но и в разы более дешёвым) предлагал графический режим и стал дико популярным.
V>Вышедший аж 5 лет спустя (!!!) ZX Spectrum имел компромиссную полу-графику (всего 2 различных цвета в квадрате 8x8 пикселей)
Спектрум имел гораздо более быстрый процессор. И честные атрибуты, без ограничений на спариваемость цветов. А решение с разделением монохрома и атрибутов было гениальным для того времени. Оно, с одной стороны, позволяло полноценно раскрашивать текст. С другой стороны иметь цветную графику и оставляло размер видеопамяти минимальным (меньше 7кб). Из-за такого компактного размера ПО работало шустро, и на код оставалось больше памяти. Именно такой экран позволил спектруму успешно конкурировать с машинами, имеющими аппаратные ускорители графики (аппаратные спрайты, аппаратная прокрутка), делая быструю графику исключительно силами CPU.
V> и при этом стал бешено популярным в Европе еще на 10 лет. Потому что дешевый, в отличие от Apple или IBM PC.
Не только потому что дешёвый. Спектрум был достаточно мощной машиной для тех лет. Если, например, сравнивать геймплей MSX, Спекрума, BBC Micro, Amstrad CPC, C64 то спектрум выглядит очень достойно среди своих конкурентов, не смотря на то, что был выпущен раньше всех.
V>Штаты довольно легко приняли завышенную цену первых персональных компов и позволили основателям фирмы стать миллионерами почти сразу. Это надо понимать, почему в Штатах тогда было именно так. Золотые их года, однако...
V>В общем, сопоставление характеристик компов в Европе/Штатах + календарных годов выпуска объясняет многое, а твои эмоциональные пассажи не объясняют ничего.
Нифига не понял этот оборот. Что объясняет ? Что Джобсу можно было кидать Возняка ? И какие эмоциональные пассажи ? Я, между прочим. довольно много фактов привожу, даже если они тебе не нравятся.
IID>>Понимаешь ли, тогда эти радиодетали стоили безумных денег. Спроектировать схему это даже не 10% дела. Надо ещё сделать её максимально дешёвой и повторяемой в условиях серийного производства.
V>Нет и еще раз нет... Радиодетали никогда не стоили безумных денег. Ну разве что розничная накрутка ~30-40%. Дык, покупай партию, чем больше партия, тем дешевле. В любом случае, розничная накрутка не десятки тысяч %%, поэтому многие могли себе позволить покупать процы и память для экспериментов.
Да дорого они стоили, дорого. Возможность частнику купить процессор совершенно не означает что легко сделать рентабельную схему. Синклер первый сумел сделать недорогие и весьма приличные микроЭВМ.
V>Что характерно, для разработки модели компа вовсе не требовалось 64к оперативки (половина стоимости всего компа по тем временам).
Обманываешь. Блок расширения памяти с 4кб на 16кб в 80-81 году стоил примерно столько же, сколько и весь компьютер. В 82-ом году расширение памяти с 16 до 48кб стоило как половина компа. Память была очень, очень дорогой. До 81 года недорогих машин с 48/64к на борту вообще не существовало. По 128кб стали ставить только начиная с 1984-85 года. И стоило это недёшево, несколько сотен фунтов. В то время как 48/64 модели стоили раза в 2-3 дешевле.
IID>>А это уже требования на несколько порядков круче. Про "фактически те же технологии" ты тоже не прав. Как минимум в 81-ом году Синклер запихал основную часть схемы компьютера в заказную ULA (Uncommited Logic Array), серъёзно снизив цену компьютера и побив несколько психологических рекордов (сначала компьютер дешевле 100 GBP, а затем компьютер дешевле 100 USD). Такие чипы выпускаются только большими партиями и одиночкам недоступны.
V>Ну так это уже 81-й год, когда популярность персоналок была доказана. В любом случае, схемотехника заказного чипа была отлажена на макете из рассыпух. И в том макете было всего ~20 шт микросхем (у Z80 не было чипа-компаньона). Да и чип заказной был не FPGA, а гибридный. Что это, объяснять надо? Т.е. там была абсолютно та же рассыпуха, просто в бескорпусном виде на подложке, залитая затем одним объемом пластика.
V>Заметь, в Европе делают Синклер, а в штатах одновременно IBM PC. В Европе гибридная пластиковая несменяемая хрень, а штатах триумф шины ISA для персоналки...т.е. огромной кучи плат расширения... Тут сравнивать нечего.
И что ? IBM PC стал популярным спустя лет 10-12, не меньше. До этого он был унылым 16-битным говном вплоть до появления i386 и машин на них (1987 год, если не ошибаюсь). И стоил всегда безумно дорого, тысячи долларов. Тупо дорогущая офисная печатная машинка. Синклер же в 1984 году выпустил Sinclair QL (да-да, тот самый, на котором изучал программирование Линус Торвальдс), полноценную 32-битную машину. На Motorola 68k. Если бы не решение использовать в качестве накопителей ненадёждные микродрайвы, и не слив всех денег в плоские телевизоры, велосипеды и электромобили... Кто знает, может быть сейчас весь мир сидел на Синклерах, а не на ПЦшках. Синклер-машины были весьма иновационными для тех лет. При этом всегда стоили очень скромных денег. Для сравнения 32битная Амига появилась примерно на 4 года позже, и стоила раза в 2 дороже.
IID>>Да причём тут предыдущие годы. Дисковод разрабатывался с нуля. И Возняк его сделал совершенно без Джобса. Это был реальный технический прорыв, оставивший конкурентов на несколько лет позади.
V>Мде... В 77-м дисковод с 0-ля???
Неуверен насчёт механики. Какие-то части были сторонние. А контроллер и софт были разработаны Возняком с нуля. И это позволило сильно снизить стоимость устройства. Кстати о птичках: если верить твоим словам о дешевизне комплектухи, то не было никакого смысла упрощать схему, сильно ведь на дешёвом не сэкономить, не так ли ? V>Ты где такую траву берешь-то? Не читай околокомпьютерных журналюг, мой тебе совет.
Не дава мне советов, и я не буду говорить куда тебе пойти.
V>Контроллеры жестких дисков всяко посложнее были, и порой больше, чем на одном аналогичном проце. Просто кто-то должен был поставить задачу, что вот, мол, ставим гибкие диски в персоналки! Вместо записи программ на аудио-кассеты.
Толку от постановки задачи, если её общепринятное решение в те годы имело стоимость сравнимую со стоимостью всего компьютера ? Гениальность заключалась в реализации.
V>И фигли там было разрабатывать, если 6802 имеет фиксированное время исполнения команд? На таких именно процах и делают блоки-замену автоматики.
Может это для тебя окажется неожиданностью, но ВСЕ процессоры имеют фиксированное время исполнения команд. Замечу, что твоё "фигли" звучит слишком по-дилетантски. Учитывая что:
Интерфейс Disk II, созданный Стивом Возняком, до сих пор считается образцом инженерного искусства.
То есть все вокруг идиоты, одному тебе "фигли" такое разработать.
V>Например сейчас в этой нише популярны PIC и AVR микроконтроллеры.
Потому что стоят копейки. Тогда микрокомпьютеры были на порядки слабее, чем сегодняшний микроконтроллер за $1 в розницу.
V>>>Apple-1 — это был больше "конструктор" для радиолюбителей, чем компьютер. IID>>Причём тут Apple-1 ?
V>О да... совсем не при чем...
Ясно, объяснить не можешь. Пукнул в лужу и убежал в кусты ?
V>>>Именно на волне популярности радиолюбительства они и взлетели... смогли заинтересовать инвестора затем, чтобы сделать кучу коммерчески важных вещей для Apple-II: V>>>- логотип V>>>- элегантный пластиковый корпус V>>>- деньги на выпуск первой партии, исправление ошибок и выпуск следующих партий... IID>>Ты считаешь что пользователи тех лет идиоты и выбирали машину исключительно из-за элегантности корпуса ?
V>При прочих равных, при покупке монитора, например, отдам предпочтение более радующему глаз.
Даже если он будет стоить не привычные 200-300$, а 5000-15000$ ? Не ври.
V>И это при том, что сейчас все модели соревнуются во внешней привлекательности, одна модель другой краше. Но на тот момент конкуренты Apple-II выглядели как цинковые ящики с кнопками. Я даже не знаю, что тут можно обсуждать.
Ну вот опять "сейчас все модели" бла-бла-бла. Потому что сейчас у них сравнимые характеристики, а цена копеечная. Хотя даже сейчас ты бы не выложил за монитор десятикратную сумму, только потому что у него корпус розовый.
IID>>Это вообще не относится к обсуждаемой теме. То что Джобс вытянул Эпл из жопы не является автоматической индульгенцией.
V>При чем тут вытянул? Он ее создал. Из воздуха.
Таки он один ? Неизвестно что бы было с Джобсом если бы не Возняк.
V>Не боялся впихивать возможностей в свои компы и не прогадал поначалу. Потом, правда, дважды обжегся, когда пробовал пойти по экстенсивному пути, вместо создания новых поколений устройств (что у него неплохо выходило).
Ещё раз говорю — это никак не оправдывает его мерзкого поступка.
Здравствуйте, IID, Вы писали:
IID>В этом и есть гениальность тех решений. Наворотить схему на сотне корпусов, особо не заморачиваясь, много ума не надо. Это как с программированием. Берём задачу и делаем её как есть, особо не выдумывая. В итоге будет тонна инструкций. Либо тщательно взвешиваем каждый битик и получаем шедевр минимализма и простоты. Посмотри, например, демки 128 или 256 байт. А потом реализуй подобное на любимом ЯВУ. Подозреваю, что даже в десятки килобайт не уложишься, хотя реализуешь быстро и не напрягаясь.
Еще раз: 6802 вышел с чипом-компаньоном, в итоге общее количество микросхем обвески получалось минимальным.
IID>
IID>Графический цветной, с разрешением 280 на 192 пикселя при 6 цветах. Благодаря особенностям стандарта NTSC схема видеоконтроллера была весьма простой (хотя это и накладывало серьёзные ограничения на качество изображения), биты в области памяти, отведённой под графический экран непосредственно ставились в соответствие фазе сигнала. Цвета кодировались следующим образом: два бита с значением 11 давали две белые точки в строке, 00 — две чёрные. 10 — красную или голубую в зависимости от старшего бита байта + чёрную, 01 — чёрную + зелёную/пурпурную в зависимости от значения старшего бита. Таким образом, однородное закрашивание было возможно только белым или чёрным цветом;
CGA, помнится, тоже не намного больше цветов отображал. Однако среди серийных персоналок цветная графика в Apple-II вроде бы была первой.
V>>В Европе это бы не влетело ни под каким соусом... Дык, оно и не взлетело. IID>Не пори чушь. ZX-80, будучи гораздо более примитивным (но и в разы более дешёвым) предлагал графический режим и стал дико популярным.
Я их около десятка в свое время спаял и еще больше наладил... Этой погремухе до сравнимого по быстродействию IBM XT как до звезд. В 89-м я ходил в гости к другу попрограммировать на Паскале, который полноценный был на IBM XT и, увы, недоделанный на Синклерах. Что-то серьезное на Синклере делать было жутко неудобно. И популярным он стал исключительно как игровой компьютер или как "первый компьютер" школьника/студента/фаната.
IID>Спектрум имел гораздо более быстрый процессор. И честные атрибуты, без ограничений на спариваемость цветов.
И я че-то не понимаю логики: как это без ограничений? В квадрате 8х8 имеем только 2 одновременных цвета. А по быстродействию некоррестно сравнивать компы с 5-тилетней разницей в дизайне. Когда вышел Синклер, Эппл вовсю работал над Маками.
IID>А решение с разделением монохрома и атрибутов было гениальным для того времени. Оно, с одной стороны, позволяло полноценно раскрашивать текст. С другой стороны иметь цветную графику и оставляло размер видеопамяти минимальным (меньше 7кб). Из-за такого компактного размера ПО работало шустро, и на код оставалось больше памяти. Именно такой экран позволил спектруму успешно конкурировать с машинами, имеющими аппаратные ускорители графики (аппаратные спрайты, аппаратная прокрутка), делая быструю графику исключительно силами CPU.
Мегаерунда. На фоне плавного скрола и полноцветных спрайтов Атари, Синклер смотрелся совсем бледно. Я гонял разные алгоритмы сдвига в свое время, с попыткой синхронизироваться по обратному ходу луча, фиг там, не успевает он за одну развертку сдвинуть целиком изображение. В общем, там одно было достоинство — дешевизна.
IID>Не только потому что дешёвый. Спектрум был достаточно мощной машиной для тех лет. Если, например, сравнивать геймплей MSX, Спекрума, BBC Micro, Amstrad CPC, C64 то спектрум выглядит очень достойно среди своих конкурентов, не смотря на то, что был выпущен раньше всех.
Мде... Не поиграл ты, похоже ни на Атари ни на Коммондоре...
V>>Штаты довольно легко приняли завышенную цену первых персональных компов и позволили основателям фирмы стать миллионерами почти сразу. Это надо понимать, почему в Штатах тогда было именно так. Золотые их года, однако...
V>>В общем, сопоставление характеристик компов в Европе/Штатах + календарных годов выпуска объясняет многое, а твои эмоциональные пассажи не объясняют ничего. IID>Нифига не понял этот оборот. Что объясняет ? Что Джобсу можно было кидать Возняка ?
Что значит кидать? Джобс сделал его миллионером, все года пытался приобщить Возняка к деятельности собственной фирмы и увеличению его доходов. Возняк настойчиво отходил от дел и все свои миллионы тратил на благотворительность. Понимаешь, для того чтобы зарабатывать миллионы и держать такую фирму на плаву, крайне мало разработать железку. Таких железок на точно таком же процессоре (68xxx) было навалом, и самый по пулярный был вовсе не Apple-II и не Мак. И где они все сейчас? И где Эппл?
IID>Да дорого они стоили, дорого. Возможность частнику купить процессор совершенно не означает что легко сделать рентабельную схему. Синклер первый сумел сделать недорогие и весьма приличные микроЭВМ.
V>>Что характерно, для разработки модели компа вовсе не требовалось 64к оперативки (половина стоимости всего компа по тем временам).
IID>Обманываешь. Блок расширения памяти с 4кб на 16кб в 80-81 году стоил примерно столько же, сколько и весь компьютер. В 82-ом году расширение памяти с 16 до 48кб стоило как половина компа. Память была очень, очень дорогой. До 81 года недорогих машин с 48/64к на борту вообще не существовало. По 128кб стали ставить только начиная с 1984-85 года. И стоило это недёшево, несколько сотен фунтов. В то время как 48/64 модели стоили раза в 2-3 дешевле.
Улыбнуло.
По ценам какого конкретно года я тебя обманываю?
IID>И что ? IBM PC стал популярным спустя лет 10-12, не меньше. До этого он был унылым 16-битным говном вплоть до появления i386 и машин на них (1987 год, если не ошибаюсь). И стоил всегда безумно дорого, тысячи долларов.
Не такое уж унылое, особенно с появлением тонны клонов. Весьма популярная машинка для офисных и инженерных нужд.
IID>Синклер же в 1984 году выпустил Sinclair QL (да-да, тот самый, на котором изучал программирование Линус Торвальдс), полноценную 32-битную машину. На Motorola 68k. Если бы не решение использовать в качестве накопителей ненадёждные микродрайвы, и не слив всех денег в плоские телевизоры, велосипеды и электромобили... Кто знает, может быть сейчас весь мир сидел на Синклерах, а не на ПЦшках. Синклер-машины были весьма иновационными для тех лет. При этом всегда стоили очень скромных денег. Для сравнения 32битная Амига появилась примерно на 4 года позже, и стоила раза в 2 дороже.
Зато она вышла с осью и всей инфраструктурой, потому и была на порядок популярнее, хотя тоже до 387-го как до звезд...
IID>Неуверен насчёт механики. Какие-то части были сторонние. А контроллер и софт были разработаны Возняком с нуля. И это позволило сильно снизить стоимость устройства. Кстати о птичках: если верить твоим словам о дешевизне комплектухи, то не было никакого смысла упрощать схему, сильно ведь на дешёвом не сэкономить, не так ли ?
Я говорил о доступности комплектующих для радиолюбителей, а вовсе не о себестоимости серийного изделия. Это разные порядки цифр.
IID>Толку от постановки задачи, если её общепринятное решение в те годы имело стоимость сравнимую со стоимостью всего компьютера ? Гениальность заключалась в реализации.
Хоть убей, не понимаю, в чем гениальность. Сдается мне, что разработать процессоры, например из серии 68к было чуть посложнее. А проц-то гениальный, если разобраться.
V>>И фигли там было разрабатывать, если 6802 имеет фиксированное время исполнения команд? На таких именно процах и делают блоки-замену автоматики. IID>Может это для тебя окажется неожиданностью, но ВСЕ процессоры имеют фиксированное время исполнения команд.
Нет. Во-первых, х8086 имел разброс на операции деления, и еще быстродействие зависело от сопроцессора. Там тупо ожидание сигнала по шине. Более того, сигналы прерывания срабатывали не сразу, а на четных тактах, так что на х8086 никто никогда автоматику точного времени не делал.
IID>Замечу, что твоё "фигли" звучит слишком по-дилетантски. Учитывая что: IID>
IID>Интерфейс Disk II, созданный Стивом Возняком, до сих пор считается образцом инженерного искусства.
IID>То есть все вокруг идиоты, одному тебе "фигли" такое разработать.
Я не спорю, что хорошая работа. Но это же на основе отличного процессора! Это несравнимые весовые категории инженерных умозатрат.
V>>Например сейчас в этой нише популярны PIC и AVR микроконтроллеры. IID>Потому что стоят копейки. Тогда микрокомпьютеры были на порядки слабее, чем сегодняшний микроконтроллер за $1 в розницу.
Ну мне довелось еще попрограммировать 8МГ PIC-и, и даже 4MГ клоны 8051, так что итоговое быстродействие вовсе не на порядки отличалось. И схема делала одновременно десятки вещей: принимала с фазовой автоподстройкой цифру по радиоканалу, подсвечивала _динамический_ светодиодный дисплей, пищала, опрашивала кнопки, вела учет реального времени и т.д. до бесконечности. Когда такты фиксированы, это проще, чем кажется... Хотя чуть сложнее, понятно, чем событийное программирование под какие-нить винды...
V>>>>Apple-1 — это был больше "конструктор" для радиолюбителей, чем компьютер. IID>>>Причём тут Apple-1 ?
V>>О да... совсем не при чем... IID>Ясно, объяснить не можешь. Пукнул в лужу и убежал в кусты ?
Не не копировать же сюда весь гугл?
V>>При прочих равных, при покупке монитора, например, отдам предпочтение более радующему глаз. IID>Даже если он будет стоить не привычные 200-300$, а 5000-15000$ ? Не ври.
И где это ты видел такую разницу Эппла и конкурентов в Штатах? За сравнимые возможности конкуренты просили сравнимые деньги... Так что мимо.
IID>Ну вот опять "сейчас все модели" бла-бла-бла. Потому что сейчас у них сравнимые характеристики, а цена копеечная. Хотя даже сейчас ты бы не выложил за монитор десятикратную сумму, только потому что у него корпус розовый.
Откуда ты берешь десятикратные суммы? Опять с Синклером пытаешься сравнивать? Который вышел тогда, когда Aplle-II уже отмирал?
V>>При чем тут вытянул? Он ее создал. Из воздуха. IID>Таки он один ? Неизвестно что бы было с Джобсом если бы не Возняк.
Зато я знаю, что было бы с Возняком... Тоже, что и с тысячами других талантливых, но немотивированных на прибыль инженеров. Он бы и сотой части таких денег за жизнь не заработал... Это при том, что исправно получает ЗП в Эппл, хотя уже десятки лет ничего для нее не делает.
IID>Ещё раз говорю — это никак не оправдывает его мерзкого поступка.
Это ты про те первые несколько тыщ зелени??? Сдается мне, что Возняк их профукал бы, как и все свои остальные деньги... а Джобс вложил сравнимую сумму в дело, которое принесло им обоим многие миллионы... Думаю, Джобс лучше знал своего друга, чем ты или я, так что пусть сами разбираются. Банально не твое дело. Мы можем только смотреть со стороны. Но со стороны выглядит так, будто Джобс всячески тянул Возняка к управляющим постам фирмы все года (иногда даже через закулисные игры, вставляя ему палки в колеса в проекты уровня "блажь"), а тот упорно всю жизнь отпихивался. А в плане того, что кино сняли с определенными эмоциональными акцентами... Ну так на то оно и кино, чтобы интрига была.
IID>>Графический цветной, с разрешением 280 на 192 пикселя при 6 цветах. Благодаря особенностям стандарта NTSC схема видеоконтроллера была весьма простой (хотя это и накладывало серьёзные ограничения на качество изображения), биты в области памяти, отведённой под графический экран непосредственно ставились в соответствие фазе сигнала. Цвета кодировались следующим образом: два бита с значением 11 давали две белые точки в строке, 00 — две чёрные. 10 — красную или голубую в зависимости от старшего бита байта + чёрную, 01 — чёрную + зелёную/пурпурную в зависимости от значения старшего бита. Таким образом, однородное закрашивание было возможно только белым или чёрным цветом;
V>CGA, помнится, тоже не намного больше цветов отображал.
4 фиксированных цвета из палитры в 16 цветов. Всё-таки на два (двоичных) порядка больше цветов :D И, заметь, без всяких конфликтных зон.
V>Однако среди серийных персоналок цветная графика в Apple-II вроде бы была первой.
Возможно. Но сколько это стоило?
The original retail price of the computer was US$1298[9] (with 4 kB of RAM) and US$2638 (with the maximum 48 kB of RAM)
V>>>В Европе это бы не влетело ни под каким соусом... Дык, оно и не взлетело. IID>>Не пори чушь. ZX-80, будучи гораздо более примитивным (но и в разы более дешёвым) предлагал графический режим и стал дико популярным.
V>Я их около десятка в свое время спаял и еще больше наладил... Этой погремухе до сравнимого по быстродействию IBM XT как до звезд.
Татычо... Кагбе весовые категории разные (8 и 16 бит), а уж ценники и подавно. А чего только с XT-шкой сравнил, а не с Amiga-ой ? По сравнению с Амигой XT-шка была ещё большей погремушкой. Давай лучше сравним с отечественными высерами типа Радио-РК 86, Микрошами и прочими БКшками (кстати, последняя хоть и 16бит, но синклеру сливала с треском). Даже с MSX-ами можно сравнить.
V>В 89-м я ходил в гости к другу попрограммировать на Паскале, который полноценный был на IBM XT и, увы, недоделанный на Синклерах.
Напоминаю про цены обоих машин. А также что никто в здравом уме и трезвой памяти ничего сложнее студенческих "Hello world" на ЯВУ на 8-битных машинах не делал. Да и на 16-битных, я думаю, тоже. Тормозили любые ЯВУ безбожно, даже откомпилированные. Исключительно машкод, с мозгодробительными оптимизациями. Насчёт недоделанности паскаля спорить не буду, т.к. синклеровский никогда не юзал.
V>Что-то серьезное на Синклере делать было жутко неудобно.
Это почему же ? Про 128к модели и дисковые интерфейсы не забываем. На спектрумах и птицефабриками управляли, и станками, и на региональных ТВ использовали, да где их только не было. Подробнее можно на zx.pk.ru почитать.
V>И популярным он стал исключительно как игровой компьютер или как "первый компьютер" школьника/студента/фаната.
Что в этом плохого ?
IID>>Спектрум имел гораздо более быстрый процессор. И честные атрибуты, без ограничений на спариваемость цветов.
V>И я че-то не понимаю логики: как это без ограничений? В квадрате 8х8 имеем только 2 одновременных цвета.
Читай внимательно выделенное. В соседних атрибутах (да и внутри каждого) можно было использовать любые цвета.
V>А по быстродействию некоррестно сравнивать компы с 5-тилетней разницей в дизайне. Когда вышел Синклер, Эппл вовсю работал над Маками.
Ну то есть ты согласен, что синклер был гораздо прогрессивнее Эпла. А то началось "полуграфика", "только потому что дешевле" и прочее. Ч.Т.Д.
IID>>А решение с разделением монохрома и атрибутов было гениальным для того времени. Оно, с одной стороны, позволяло полноценно раскрашивать текст. С другой стороны иметь цветную графику и оставляло размер видеопамяти минимальным (меньше 7кб). Из-за такого компактного размера ПО работало шустро, и на код оставалось больше памяти. Именно такой экран позволил спектруму успешно конкурировать с машинами, имеющими аппаратные ускорители графики (аппаратные спрайты, аппаратная прокрутка), делая быструю графику исключительно силами CPU.
V>Мегаерунда. На фоне плавного скрола и полноцветных спрайтов Атари, Синклер смотрелся совсем бледно.
Не во всех играх нужен скролл. Клешинг — да, сильно портил картинку. Но всё равно было несколько вариантов: либо красиво прорисованная статика (Exolon, Rex), либо грамотно спроектированные уровни (Zynaps, Dark Fusion), либо познакоместный скролл (Savage, AMC), либо комбинации (R-Type).
V>Я гонял разные алгоритмы сдвига в свое время, с попыткой синхронизироваться по обратному ходу луча, фиг там, не успевает он за одну развертку сдвинуть целиком изображение. В общем, там одно было достоинство — дешевизна.
Да это просто ты программист фиговый Хочешь, навскидку, игру с плавным попиксельным скроллом в 50fps ? Это FireFly. Куча игр юзала 25fps-ный вывод. С плавным цветным скроллом. Например Stormlord, Zynaps, Ghosts'n'Goblins, Ghouls'n'Ghosts, Cobra. Кроме того было дохренища фреймовых игр без скроллинга задника. Например Blade Warrior.
Могу навскидку дать inner-loop для попиксельного скролла, тратящего 24 такта на байт (8 точек). Половину целого экрана можно фреймово скроллить. Если ввести ограничения на тайлы уровня то можно ускориться вчетверо, отрисовывая 2(!) полных экрана за фрейм.
IID>>Не только потому что дешёвый. Спектрум был достаточно мощной машиной для тех лет. Если, например, сравнивать геймплей MSX, Спекрума, BBC Micro, Amstrad CPC, C64 то спектрум выглядит очень достойно среди своих конкурентов, не смотря на то, что был выпущен раньше всех.
V>Мде... Не поиграл ты, похоже ни на Атари ни на Коммондоре...
За Атари не скажу, а комодурские бледные цвета и широкие пиксели не доставляют никапельки. Вот SID в комодури это тема. В атари же чип звуковой такой же как на спеке.
V>>>Штаты довольно легко приняли завышенную цену первых персональных компов и позволили основателям фирмы стать миллионерами почти сразу. Это надо понимать, почему в Штатах тогда было именно так. Золотые их года, однако...
V>>>В общем, сопоставление характеристик компов в Европе/Штатах + календарных годов выпуска объясняет многое, а твои эмоциональные пассажи не объясняют ничего. IID>>Нифига не понял этот оборот. Что объясняет ? Что Джобсу можно было кидать Возняка ?
V>Что значит кидать? Джобс сделал его миллионером, все года пытался приобщить Возняка к деятельности собственной фирмы и увеличению его доходов. Возняк настойчиво отходил от дел и все свои миллионы тратил на благотворительность. Понимаешь, для того чтобы зарабатывать миллионы и держать такую фирму на плаву, крайне мало разработать железку. Таких железок на точно таком же процессоре (68xxx) было навалом, и самый по пулярный был вовсе не Apple-II и не Мак. И где они все сейчас? И где Эппл?
Тем не менее ситуация с зажиманием гонорара это кидок.
IID>>Да дорого они стоили, дорого. Возможность частнику купить процессор совершенно не означает что легко сделать рентабельную схему. Синклер первый сумел сделать недорогие и весьма приличные микроЭВМ.
V>>>Что характерно, для разработки модели компа вовсе не требовалось 64к оперативки (половина стоимости всего компа по тем временам).
IID>>Обманываешь. Блок расширения памяти с 4кб на 16кб в 80-81 году стоил примерно столько же, сколько и весь компьютер. В 82-ом году расширение памяти с 16 до 48кб стоило как половина компа. Память была очень, очень дорогой. До 81 года недорогих машин с 48/64к на борту вообще не существовало. По 128кб стали ставить только начиная с 1984-85 года. И стоило это недёшево, несколько сотен фунтов. В то время как 48/64 модели стоили раза в 2-3 дешевле.
V>Улыбнуло. V>По ценам какого конкретно года я тебя обманываю?
я привёл тебе годы.
IID>>И что ? IBM PC стал популярным спустя лет 10-12, не меньше. До этого он был унылым 16-битным говном вплоть до появления i386 и машин на них (1987 год, если не ошибаюсь). И стоил всегда безумно дорого, тысячи долларов.
V>Не такое уж унылое, особенно с появлением тонны клонов. Весьма популярная машинка для офисных и инженерных нужд.
Унылое. До середины 90х по графике, мультимедийным возможностям и цене ПЦ уверенно сливали Амигам. Будешь спорить ?
IID>>Синклер же в 1984 году выпустил Sinclair QL (да-да, тот самый, на котором изучал программирование Линус Торвальдс), полноценную 32-битную машину. На Motorola 68k. Если бы не решение использовать в качестве накопителей ненадёждные микродрайвы, и не слив всех денег в плоские телевизоры, велосипеды и электромобили... Кто знает, может быть сейчас весь мир сидел на Синклерах, а не на ПЦшках. Синклер-машины были весьма иновационными для тех лет. При этом всегда стоили очень скромных денег. Для сравнения 32битная Амига появилась примерно на 4 года позже, и стоила раза в 2 дороже.
V>Зато она вышла с осью и всей инфраструктурой, потому и была на порядок популярнее, хотя тоже до 387-го как до звезд...
Ты это серъёзно ? (на опечатку в 387 не обращаем внимание). Ты правда считаешь что 386 с EGA это звёзды ? Погугли графические возможности амиги. А аппаратный блиттер тебе о чём нибудь говорит ? И аппаратное же 3Д.
IID>>Неуверен насчёт механики. Какие-то части были сторонние. А контроллер и софт были разработаны Возняком с нуля. И это позволило сильно снизить стоимость устройства. Кстати о птичках: если верить твоим словам о дешевизне комплектухи, то не было никакого смысла упрощать схему, сильно ведь на дешёвом не сэкономить, не так ли ?
V>Я говорил о доступности комплектующих для радиолюбителей, а вовсе не о себестоимости серийного изделия. Это разные порядки цифр.
IID>>Толку от постановки задачи, если её общепринятное решение в те годы имело стоимость сравнимую со стоимостью всего компьютера ? Гениальность заключалась в реализации.
V>Хоть убей, не понимаю, в чем гениальность. Сдается мне, что разработать процессоры, например из серии 68к было чуть посложнее. А проц-то гениальный, если разобраться.
V>>>И фигли там было разрабатывать, если 6802 имеет фиксированное время исполнения команд? На таких именно процах и делают блоки-замену автоматики. IID>>Может это для тебя окажется неожиданностью, но ВСЕ процессоры имеют фиксированное время исполнения команд.
V>Нет. Во-первых, х8086 имел разброс на операции деления, и еще быстродействие зависело от сопроцессора.
Оно всё равно фиксированное. Нефиксированное — это, например, PIO.
V>Там тупо ожидание сигнала по шине. Более того, сигналы прерывания срабатывали не сразу, а на четных тактах, так что на х8086 никто никогда автоматику точного времени не делал.
разброс в 0.5 такта на 5мгц это очень критичная задержка ? Кроме того прошивки не на ЯВУ писались, а руками, на АСМе. Посчитать такты тривиально. На спектруме вон даже на бордере рисовали, синхронно с пикселями. См., например, демки Insult (Hidden Part) и Rage (ближе к концу)
IID>>Замечу, что твоё "фигли" звучит слишком по-дилетантски. Учитывая что: IID>>
IID>>Интерфейс Disk II, созданный Стивом Возняком, до сих пор считается образцом инженерного искусства.
IID>>То есть все вокруг идиоты, одному тебе "фигли" такое разработать.
V>Я не спорю, что хорошая работа. Но это же на основе отличного процессора! Это несравнимые весовые категории инженерных умозатрат.
Где там процессор в дисководе ?
V>>>Например сейчас в этой нише популярны PIC и AVR микроконтроллеры. IID>>Потому что стоят копейки. Тогда микрокомпьютеры были на порядки слабее, чем сегодняшний микроконтроллер за $1 в розницу.
V>Ну мне довелось еще попрограммировать 8МГ PIC-и, и даже 4MГ клоны 8051, так что итоговое быстродействие вовсе не на порядки отличалось. И схема делала одновременно десятки вещей: принимала с фазовой автоподстройкой цифру по радиоканалу, подсвечивала _динамический_ светодиодный дисплей, пищала, опрашивала кнопки, вела учет реального времени и т.д. до бесконечности. Когда такты фиксированы, это проще, чем кажется... Хотя чуть сложнее, понятно, чем событийное программирование под какие-нить винды...
На порядки 1мгц 6502 помноженный на многотактовые команды, и 8мгц PIC-а с однотактовыми даёт разницу в порядок
V>>>При прочих равных, при покупке монитора, например, отдам предпочтение более радующему глаз. IID>>Даже если он будет стоить не привычные 200-300$, а 5000-15000$ ? Не ври.
V>И где это ты видел такую разницу Эппла и конкурентов в Штатах? За сравнимые возможности конкуренты просили сравнимые деньги... Так что мимо.
Про штаты не знаю, гуглить лень. А в европе ?
IID>>Ну вот опять "сейчас все модели" бла-бла-бла. Потому что сейчас у них сравнимые характеристики, а цена копеечная. Хотя даже сейчас ты бы не выложил за монитор десятикратную сумму, только потому что у него корпус розовый.
V>Откуда ты берешь десятикратные суммы? Опять с Синклером пытаешься сравнивать? Который вышел тогда, когда Aplle-II уже отмирал?
Долго же он отмирал =) почти до 90х, каждый раз апгрейдясь.
IID>>Ещё раз говорю — это никак не оправдывает его мерзкого поступка.
V>Это ты про те первые несколько тыщ зелени??? Сдается мне, что Возняк их профукал бы, как и все свои остальные деньги... а Джобс вложил сравнимую сумму в дело, которое принесло им обоим многие миллионы... Думаю, Джобс лучше знал своего друга, чем ты или я, так что пусть сами разбираются. Банально не твое дело. Мы можем только смотреть со стороны. Но со стороны выглядит так, будто Джобс всячески тянул Возняка к управляющим постам фирмы все года (иногда даже через закулисные игры, вставляя ему палки в колеса в проекты уровня "блажь"), а тот упорно всю жизнь отпихивался. А в плане того, что кино сняли с определенными эмоциональными акцентами... Ну так на то оно и кино, чтобы интрига была.
Здравствуйте, vdimas, Вы писали:
V>Короче, вся "гениальность" заключалась в безрассудной для того времени ставке на полноценную графику для персональных ЭВМ. Причем, на таком "безрассудстве" настаивал именно Джобс. И не прогадал!
Значит гениальность не в кавычках и никакого безрассудства не было и в помине.
IID>>Это вообще не относится к обсуждаемой теме. То что Джобс вытянул Эпл из жопы не является автоматической индульгенцией.
V>При чем тут вытянул? Он ее создал. Из воздуха. Не боялся впихивать возможностей в свои компы и не прогадал поначалу. Потом, правда, дважды обжегся, когда пробовал пойти по экстенсивному пути, вместо создания новых поколений устройств (что у него неплохо выходило).
Здравствуйте, IID, Вы писали:
V>>CGA, помнится, тоже не намного больше цветов отображал.
IID>4 фиксированных цвета из палитры в 16 цветов. Всё-таки на два (двоичных) порядка больше цветов :D И, заметь, без всяких конфликтных зон.
На Маках потом все-равно круче было.
Понятное дело, что при доказанном спросе на графику на персоналках можно вкладываться в дизайн по-взрослому...
V>>Однако среди серийных персоналок цветная графика в Apple-II вроде бы была первой.
IID>Возможно. Но сколько это стоило? IID>
IID>The original retail price of the computer was US$1298[9] (with 4 kB of RAM) and US$2638 (with the maximum 48 kB of RAM)
Та блин... Сколько бы не стоило... В СССР в те времена вовсю процветал ввод/вывод через перфокарты. Поставить графический дисплей на персоналку было очень крутым замахом на тот год. И это была идея Джобса, однако.
V>>Я их около десятка в свое время спаял и еще больше наладил... Этой погремухе до сравнимого по быстродействию IBM XT как до звезд. IID>Татычо... Кагбе весовые категории разные (8 и 16 бит), а уж ценники и подавно. А чего только с XT-шкой сравнил, а не с Amiga-ой ? По сравнению с Амигой XT-шка была ещё большей погремушкой. Давай лучше сравним с отечественными высерами типа Радио-РК 86, Микрошами и прочими БКшками (кстати, последняя хоть и 16бит, но синклеру сливала с треском). Даже с MSX-ами можно сравнить.
Радио и Микроша были наколенными поделками любителей. БК была очень неплоха... Но отсутствие мощной инфраструктуры и ПО было приговором. Можно сравнить с Корветом, где на слабом, казалось бы, проце, но всё продумано и сразу с пакетом программ и всей периферией. Жаль, опоздали на 10 лет. Ну и ДВК, само собой. Хоть и "клон", якобы, но там клонировали только систему команд (потому как сперли исходники операционок DEC). Сами процессора эти были самостоятельной разработкой. Очень неплохой. Не развались Союз, ДВК-4 и выше могли бы неплохо выстрелить, с многообещающими крайне дешевыми процами 1801BM3/4 и мифическим BM5 (его так никто и не видел)... ведь по графике последние модели явно опережали бывшее у нас тогда в ходу EGA, а быстродействия проца хватало на серьезные задачи.
V>>В 89-м я ходил в гости к другу попрограммировать на Паскале, который полноценный был на IBM XT и, увы, недоделанный на Синклерах. IID>Напоминаю про цены обоих машин. А также что никто в здравом уме и трезвой памяти ничего сложнее студенческих "Hello world" на ЯВУ на 8-битных машинах не делал. Да и на 16-битных, я думаю, тоже. Тормозили любые ЯВУ безбожно, даже откомпилированные.
Это твои фантази. Нормально паскалевские и сишные программы работали. Понятно, что без ассемблерных вставок никуда, но целиком большую прогу писать на асме — нереал.
IID>Исключительно машкод, с мозгодробительными оптимизациями.
Это у тебя "общая эрудиция" дает себя знать... Всё немного не так обстояло.
V>>Что-то серьезное на Синклере делать было жутко неудобно. IID>Это почему же ? Про 128к модели и дисковые интерфейсы не забываем. На спектрумах и птицефабриками управляли, и станками, и на региональных ТВ использовали, да где их только не было. Подробнее можно на zx.pk.ru почитать.
А ты текст на Синклерах набивал когда-нибудь?
V>>И популярным он стал исключительно как игровой компьютер или как "первый компьютер" школьника/студента/фаната. IID>Что в этом плохого ?
Ничего... Просто это не совсем компьютер, только и всего. Электронная игрушка, разве что.
IID>>>Спектрум имел гораздо более быстрый процессор. И честные атрибуты, без ограничений на спариваемость цветов.
V>>И я че-то не понимаю логики: как это без ограничений? В квадрате 8х8 имеем только 2 одновременных цвета. IID>Читай внимательно выделенное. В соседних атрибутах (да и внутри каждого) можно было использовать любые цвета.
Ну так во время скрола с цветами имеем бока. Отсюда специфика синкреровских игрушек — максимум двухцветный задний фон. Монохромный т.е.
V>>А по быстродействию некоррестно сравнивать компы с 5-тилетней разницей в дизайне. Когда вышел Синклер, Эппл вовсю работал над Маками. IID>Ну то есть ты согласен, что синклер был гораздо прогрессивнее Эпла. А то началось "полуграфика", "только потому что дешевле" и прочее. Ч.Т.Д.
Тю, блин. Корвет еще прогрессивнее их обоих, и что с того?
IID>>>А решение с разделением монохрома и атрибутов было гениальным для того времени. Оно, с одной стороны, позволяло полноценно раскрашивать текст. С другой стороны иметь цветную графику и оставляло размер видеопамяти минимальным (меньше 7кб). Из-за такого компактного размера ПО работало шустро, и на код оставалось больше памяти. Именно такой экран позволил спектруму успешно конкурировать с машинами, имеющими аппаратные ускорители графики (аппаратные спрайты, аппаратная прокрутка), делая быструю графику исключительно силами CPU.
V>>Мегаерунда. На фоне плавного скрола и полноцветных спрайтов Атари, Синклер смотрелся совсем бледно. IID>Не во всех играх нужен скролл. Клешинг — да, сильно портил картинку. Но всё равно было несколько вариантов: либо красиво прорисованная статика (Exolon, Rex), либо грамотно спроектированные уровни (Zynaps, Dark Fusion), либо познакоместный скролл (Savage, AMC), либо комбинации (R-Type).
V>>Я гонял разные алгоритмы сдвига в свое время, с попыткой синхронизироваться по обратному ходу луча, фиг там, не успевает он за одну развертку сдвинуть целиком изображение. В общем, там одно было достоинство — дешевизна.
IID>Да это просто ты программист фиговый Хочешь, навскидку, игру с плавным попиксельным скроллом в 50fps ? Это FireFly. Куча игр юзала 25fps-ный вывод. С плавным цветным скроллом. Например Stormlord, Zynaps, Ghosts'n'Goblins, Ghouls'n'Ghosts, Cobra. Кроме того было дохренища фреймовых игр без скроллинга задника. Например Blade Warrior.
Наверно ты не понимаешь, что есть плавный скролл в любом направлении. И чем скролл в том же Boulder Dush у конкурентов отличался от скрола на игрухах Синклера. Я именно про такой абсолютно идеальный скролл говорю. По-настоящему плавно скролить горизонтально на синкрелере можно было не весь экран, а только некоторую его часть. Понятно, что вертикальный скролл был идеальным, когда целиком байты перегонялись без изменений... особенно хорошо это было заметно на бегущих титрах игрух.
IID>Могу навскидку дать inner-loop для попиксельного скролла, тратящего 24 такта на байт (8 точек). Половину целого экрана можно фреймово скроллить. Если ввести ограничения на тайлы уровня то можно ускориться вчетверо, отрисовывая 2(!) полных экрана за фрейм.
Это если уметь отличать четную развертку от нечетной, а такого способа нет. Поэтому если попадешь не на ту развертку, то процесс копирования во время скролла будет хорошо заметен. Как он заметен во многих играх.
IID>Тем не менее ситуация с зажиманием гонорара это кидок.
Он давно тысячекратно расплатился.
V>>Улыбнуло. V>>По ценам какого конкретно года я тебя обманываю?
IID>я привёл тебе годы.
Ну и улыбнул разговор с самим ссобой. По ценамодном года не выходило. Через год уже выходило...
IID>>>И что ? IBM PC стал популярным спустя лет 10-12, не меньше. До этого он был унылым 16-битным говном вплоть до появления i386 и машин на них (1987 год, если не ошибаюсь). И стоил всегда безумно дорого, тысячи долларов.
V>>Не такое уж унылое, особенно с появлением тонны клонов. Весьма популярная машинка для офисных и инженерных нужд.
IID>Унылое. До середины 90х по графике, мультимедийным возможностям и цене ПЦ уверенно сливали Амигам. Будешь спорить ?
Буду, конечно. Потому что у нас вся разработка почему-то шла под PC, вернее под шину ISA... А твоя Амига сдохла от своей закрытости и плохой расширяемости. Конечно... если поиграть в игрухи, то то это Амига... А если заниматься разработкой — несомненно PC.
V>>Зато она вышла с осью и всей инфраструктурой, потому и была на порядок популярнее, хотя тоже до 387-го как до звезд...
IID>Ты это серъёзно ? (на опечатку в 387 не обращаем внимание). Ты правда считаешь что 386 с EGA это звёзды ?
Конечно, в плане популярности — несомненный хит.
IID>Погугли графические возможности амиги. А аппаратный блиттер тебе о чём нибудь говорит ? И аппаратное же 3Д.
А толку без ПО? ДВК-4 тоже от AT по графике не отставали, однако же сдохли вполне успешно, как и Амига.
V>>Там тупо ожидание сигнала по шине. Более того, сигналы прерывания срабатывали не сразу, а на четных тактах, так что на х8086 никто никогда автоматику точного времени не делал. IID>разброс в 0.5 такта на 5мгц это очень критичная задержка ?
Да, часы реального времени делать не получалось, пробовали... За несколько суток набегала разница.
IID>Кроме того прошивки не на ЯВУ писались, а руками, на АСМе. Посчитать такты тривиально. На спектруме вон даже на бордере рисовали, синхронно с пикселями. См., например, демки Insult (Hidden Part) и Rage (ближе к концу)
Ну ты сравнил... У Синклера всего одно прерывание, и его уже обработали, коль по бордеру синхронизировались... И давай эту тему сворачивать. Для рисования по бордеру особой точности не надо, и еще каждый раз мы синхронизируемся по прерыванию... Это 4-5 порядков меньше требуемой когда-то точности. Мы делали так: замеряли тактовую конкретного проца (какая там получалась на кварце уже в схеме) до 8-й значащей цифры, и прошивали в конкретный экземпляр 24-разрядный коэф в ПЗУ. Програма писалась так, что полный цикл в любом из режимов был на одинаковое кол-во тактов. Примерно как в сигнальных процессорах.
IID>На порядки 1мгц 6502 помноженный на многотактовые команды, и 8мгц PIC-а с однотактовыми даёт разницу в порядок
Переход двухтактный. А условное ветвление — вообще пестня... К тому же в PIC-ах с адресацией сложности (имеем только 2 регистра для косвенной адресации и более ничего), и отсюда сравнимые программы больше и заметно длиннее в тактах.
Здравствуйте, vdimas, Вы писали:
V>>>Однако среди серийных персоналок цветная графика в Apple-II вроде бы была первой.
IID>>Возможно. Но сколько это стоило? IID>>
IID>>The original retail price of the computer was US$1298[9] (with 4 kB of RAM) and US$2638 (with the maximum 48 kB of RAM)
V>Та блин... Сколько бы не стоило... В СССР в те времена вовсю процветал ввод/вывод через перфокарты. Поставить графический дисплей на персоналку было очень крутым замахом на тот год. И это была идея Джобса, однако.
А причём тут СССР ? И графические дисплеи вовсю уже применялись на западе. Так что идея поставить его на персоналку очевидна. Вопрос только в стоимости изделия. И тут выстрелил Возняк
V>>>Я их около десятка в свое время спаял и еще больше наладил... Этой погремухе до сравнимого по быстродействию IBM XT как до звезд. IID>>Татычо... Кагбе весовые категории разные (8 и 16 бит), а уж ценники и подавно. А чего только с XT-шкой сравнил, а не с Amiga-ой ? По сравнению с Амигой XT-шка была ещё большей погремушкой. Давай лучше сравним с отечественными высерами типа Радио-РК 86, Микрошами и прочими БКшками (кстати, последняя хоть и 16бит, но синклеру сливала с треском). Даже с MSX-ами можно сравнить.
V>Радио и Микроша были наколенными поделками любителей. БК была очень неплоха... Но отсутствие мощной инфраструктуры и ПО было приговором. Можно сравнить с Корветом, где на слабом, казалось бы, проце, но всё продумано и сразу с пакетом программ и всей периферией. Жаль, опоздали на 10 лет.
Корвет тоже говно изрядное Убогий КР580 на 2.5мгц и графический экран на 64килобайта это даже не смешно. Приведи пример быстрой графики на Корвете. С твоим любимым плавным скроллом особливо wanted
V>Ну и ДВК, само собой. Хоть и "клон", якобы, но там клонировали только систему команд (потому как сперли исходники операционок DEC). Сами процессора эти были самостоятельной разработкой. Очень неплохой. Не развались Союз, ДВК-4 и выше могли бы неплохо выстрелить, с многообещающими крайне дешевыми процами 1801BM3/4 и мифическим BM5 (его так никто и не видел)... ведь по графике последние модели явно опережали бывшее у нас тогда в ходу EGA, а быстродействия проца хватало на серьезные задачи.
Процессор — да. Потому что копия легендарного PDP-11. А всё остальное криво и косо
V>>>В 89-м я ходил в гости к другу попрограммировать на Паскале, который полноценный был на IBM XT и, увы, недоделанный на Синклерах. IID>>А также что никто в здравом уме и трезвой памяти ничего сложнее студенческих "Hello world" на ЯВУ на 8-битных машинах не делал. Да и на 16-битных, я думаю, тоже. Тормозили любые ЯВУ безбожно, даже откомпилированные.
V>Это твои фантази. Нормально паскалевские и сишные программы работали. Понятно, что без ассемблерных вставок никуда, но целиком большую прогу писать на асме — нереал.
Да нифига не нормально. Ты видел выхлоп кодогенератора ? Он примитивный и наитупейший. Прогу на асме написать более чем реально. Объёмы тогда были поскромнее чем сейчас. Типичная программа это несколько килобайт кода и несколько десятков килобайт данных. Я, например, в 95-ом игру целиком на асме написал, платформер/квест с плавными спрайтами, фоновой AY-музыкой и цветными детальными локациями. 8кб чистого кода (несколько тысяч строк сорца) и ещё килобайт 40 ресурсов, есс-по пожатых. На моделях с 128кб РАМ были ещё и финалкаты. С другой стороны я не видел ни одной фирменной игры с красочной, быстрой графикой или системной программы, быстрой, надёжной и компактной, которые были бы написаны с использованием ЯВУ. АСМ, чистый АСМ и только он.
IID>>Исключительно машкод, с мозгодробительными оптимизациями.
V>Это у тебя "общая эрудиция" дает себя знать... Всё немного не так обстояло.
Может на совковых калеках и писали на ЯВУ, это косвенно подтверждается отвратительным качеством всего софта, за редкими исключениями, которые, я уверен, были написаны польностью на АСМе.
V>>>Что-то серьезное на Синклере делать было жутко неудобно. IID>>Это почему же ? Про 128к модели и дисковые интерфейсы не забываем. На спектрумах и птицефабриками управляли, и станками, и на региональных ТВ использовали, да где их только не было. Подробнее можно на zx.pk.ru почитать.
V>А ты текст на Синклерах набивал когда-нибудь?
Конечно. И на 48к, и на более позднем 128к с раширенной клавиатурой.
V>>>И популярным он стал исключительно как игровой компьютер или как "первый компьютер" школьника/студента/фаната. IID>>Что в этом плохого ?
V>Ничего... Просто это не совсем компьютер, только и всего. Электронная игрушка, разве что.
С такой логикой электронными игрушками в то время было всё, что стоило дешевле 3-5 тысяч баксов.
IID>>>>Спектрум имел гораздо более быстрый процессор. И честные атрибуты, без ограничений на спариваемость цветов.
V>>>И я че-то не понимаю логики: как это без ограничений? В квадрате 8х8 имеем только 2 одновременных цвета. IID>>Читай внимательно выделенное. В соседних атрибутах (да и внутри каждого) можно было использовать любые цвета.
V>Ну так во время скрола с цветами имеем бока.
Не путай клешинг и ограничение на спаривание цветов.
V>Отсюда специфика синкреровских игрушек — максимум двухцветный задний фон. Монохромный т.е.
Бугага. Я ж тебе в прошлом псто целую пачку цветных плавных скроллов(!!!) привёл. А цветных статических задников было чуть ли не 80% от всех игр. Вот где монохром был — так это на БК. Потому что три кислотных цвета черзчур вырвиглазны.
V>>>А по быстродействию некоррестно сравнивать компы с 5-тилетней разницей в дизайне. Когда вышел Синклер, Эппл вовсю работал над Маками. IID>>Ну то есть ты согласен, что синклер был гораздо прогрессивнее Эпла. А то началось "полуграфика", "только потому что дешевле" и прочее. Ч.Т.Д.
V>Тю, блин. Корвет еще прогрессивнее их обоих, и что с того?
Ты делаешь меня смеяться. Чем же это корвет был прогрессивнее ? Убогий процессор на низкой частоте и жирнейший экран в 64кб. В чём прогресс-то ? Покажи мне быструю плавную графику на корвете. На ZX вбиваешь Youtube ZX-Spectrum Demo и смотришь. Ни для одного совкового высера подобных по уровню демок не существуюет. Да что там далеко ходить, даже игры драли со спектрума, драли безжалостно, но получалось ужасно и убого, близко не так как в оригинале.
IID>>>>А решение с разделением монохрома и атрибутов было гениальным для того времени. Оно, с одной стороны, позволяло полноценно раскрашивать текст. С другой стороны иметь цветную графику и оставляло размер видеопамяти минимальным (меньше 7кб). Из-за такого компактного размера ПО работало шустро, и на код оставалось больше памяти. Именно такой экран позволил спектруму успешно конкурировать с машинами, имеющими аппаратные ускорители графики (аппаратные спрайты, аппаратная прокрутка), делая быструю графику исключительно силами CPU.
V>>>Мегаерунда. На фоне плавного скрола и полноцветных спрайтов Атари, Синклер смотрелся совсем бледно.
А давай-ка вспомним про ограничения таких аппаратных решений:
Аппаратный скролл
1) Умеет скроллить только весь экран целиком. Неподвижные элементы сделать невозможно. Хорошо если видеоконтролллер поддерживает изменение параметров скролла в течении формирования кадра и есть прерывание по счётчику строк растра, как в NES. Тогда можно какую-то полосу экрана не скроллить, сделав из неё панель статуса, а другие — скроллить.
2) При тайловой организации (NES, Sega, SNES и т.д.) нет попиксельного доступа к видеопамяти, да и общее число тайлов ограничено. Поэтому ни векторной графики нормальной, и пиксельных эффектов, ничего. Даже при пиксельной организации часто обновление отдельных пикселей — проблема. Например на Yamaha MSX это делалось через ужасно тормозное I/O, вместо прямого доступа к памяти.
аппаратные спрайты
1) общее количество спрайтов. Преодолевается мозголомным перепрограммированием видеоконтроллера на лету, во время формирования кадра. И хорошо, если есть прерывание по счётчику строк растра, как в NES. А если нету ?
2) количество спрайтов на одной строке растра, все сверхнормы просто не отображаются. Не предолевается никак. Есть костыльное решение — отображать в разных кадрах разные спрайты. При этом они начинают дико мерцать. Все помнят это мерцание по NES/Денди играм.
IID>>Не во всех играх нужен скролл. Клешинг — да, сильно портил картинку. Но всё равно было несколько вариантов: либо красиво прорисованная статика (Exolon, Rex), либо грамотно спроектированные уровни (Zynaps, Dark Fusion), либо познакоместный скролл (Savage, AMC), либо комбинации (R-Type).
V>>>Я гонял разные алгоритмы сдвига в свое время, с попыткой синхронизироваться по обратному ходу луча, фиг там, не успевает он за одну развертку сдвинуть целиком изображение. В общем, там одно было достоинство — дешевизна.
IID>>Да это просто ты программист фиговый Хочешь, навскидку, игру с плавным попиксельным скроллом в 50fps ? Это FireFly. Куча игр юзала 25fps-ный вывод. С плавным цветным скроллом. Например Stormlord, Zynaps, Ghosts'n'Goblins, Ghouls'n'Ghosts, Cobra. Кроме того было дохренища фреймовых игр без скроллинга задника. Например Blade Warrior.
V>Наверно ты не понимаешь, что есть плавный скролл в любом направлении.
Прекрасно понимаю. Я тебе привёл игры с плавным и цветным скроллом. Ознакомся.
V>И чем скролл в том же Boulder Dush у конкурентов отличался от скрола на игрухах Синклера. Я именно про такой абсолютно идеальный скролл говорю. По-настоящему плавно скролить горизонтально на синкрелере можно было не весь экран, а только некоторую его часть. Понятно, что вертикальный скролл был идеальным, когда целиком байты перегонялись без изменений... особенно хорошо это было заметно на бегущих титрах игрух.
Открою тебе страшную тайну — никто не делал на спектруме горизонтальный скролл побитовыми сдвигами. Хотя и есть довольно быстрый способ, 1px в 19т/байт через RR(HL)/RL(HL) : INC L/DEC L и 4px в 22т/байт через RRD/RLD : INC L/DEC L. Очевидными минусами такого способа являются:
1) невозможность совмещения с вертикальным скроллом
2) необходимость восстановления фона под спрайтами перед скроллом
3) невозможность скроллирования на произвольное число шагов
Поэтому все нормальные игры создавали кеш прескроллированных тайлов. И рисовали уровень простым копированием. Некоторые даже через стек. Отсюда и 25 fps при полноэкранном плавном цветном скроллинге с кучей спрайтов. Конечно, были и другие игры. С монохромным медленным 10-12fps скроллом в окне, меньше 2/3 экрана (Robocop-1). Но не надо по ним судить о всех играх и платформе в целом.
IID>>Могу навскидку дать inner-loop для попиксельного скролла, тратящего 24 такта на байт (8 точек). Половину целого экрана можно фреймово скроллить. Если ввести ограничения на тайлы уровня то можно ускориться вчетверо, отрисовывая 2(!) полных экрана за фрейм.
V>Это если уметь отличать четную развертку от нечетной, а такого способа нет. Поэтому если попадешь не на ту развертку, то процесс копирования во время скролла будет хорошо заметен. Как он заметен во многих играх.
Не гони, не надо ничего отличать. Растеризация кадра делается целиком всегда. Никакой черезстрочной развёртки на Спектруме нету. Прогрессивная с прореживанием. А чтобы не было tear-инга (термин то хоть знаком?) используют дабл-буферинг. Либо с буфером в памяти (Spectrum48k) либо второй аппаратный экран (Spectrum128k). Кстати о птичках: на БК экран + даблбуфер экрана сожрут абсолютно всю RAM, на код ничего не останется. На Корвете всей RAM даже на один даблбуфер не хватит.
IID>>>>И что ? IBM PC стал популярным спустя лет 10-12, не меньше. До этого он был унылым 16-битным говном вплоть до появления i386 и машин на них (1987 год, если не ошибаюсь). И стоил всегда безумно дорого, тысячи долларов.
V>>>Не такое уж унылое, особенно с появлением тонны клонов. Весьма популярная машинка для офисных и инженерных нужд.
IID>>Унылое. До середины 90х по графике, мультимедийным возможностям и цене ПЦ уверенно сливали Амигам. Будешь спорить ?
V>Буду, конечно. Потому что у нас вся разработка почему-то шла под PC, вернее под шину ISA... А твоя Амига сдохла от своей закрытости и плохой расширяемости. Конечно... если поиграть в игрухи, то то это Амига... А если заниматься разработкой — несомненно PC.
Ты меня вообще не читаешь ? Выделил ключевое. Теперь оспаривай.
V>>>Зато она вышла с осью и всей инфраструктурой, потому и была на порядок популярнее, хотя тоже до 387-го как до звезд...
IID>>Ты это серъёзно ? (на опечатку в 387 не обращаем внимание). Ты правда считаешь что 386 с EGA это звёзды ?
V>Конечно, в плане популярности — несомненный хит.
Как офисная печатная машинка разве что, но не как персональный компьютер. Тут ему до амиги как раком до луны.
IID>>Погугли графические возможности амиги. А аппаратный блиттер тебе о чём нибудь говорит ? И аппаратное же 3Д.
V>А толку без ПО? ДВК-4 тоже от AT по графике не отставали, однако же сдохли вполне успешно, как и Амига.
ПО было навалом, гораздо больше чем для ПЦ. Не ПО оказалось ахиллесовой пятой Амиг, а закрытая архитектура и дибильный менеджмент.
V>>>Там тупо ожидание сигнала по шине. Более того, сигналы прерывания срабатывали не сразу, а на четных тактах, так что на х8086 никто никогда автоматику точного времени не делал. IID>>разброс в 0.5 такта на 5мгц это очень критичная задержка ?
V>Да, часы реального времени делать не получалось, пробовали... За несколько суток набегала разница.
IID>>Кроме того прошивки не на ЯВУ писались, а руками, на АСМе. Посчитать такты тривиально. На спектруме вон даже на бордере рисовали, синхронно с пикселями. См., например, демки Insult (Hidden Part) и Rage (ближе к концу)
V>Ну ты сравнил... У Синклера всего одно прерывание, и его уже обработали, коль по бордеру синхронизировались... И давай эту тему сворачивать. Для рисования по бордеру особой точности не надо, и еще каждый раз мы синхронизируемся по прерыванию... Это 4-5 порядков меньше требуемой когда-то точности.
Какая феерическая чушь! Объясняю на пальцах: за один такт CPU видеоконтроллер успевает нарисовать 2 точки. Прерывание не придёт раньше окончания исполнения текущей инструкции. А т.к. инструкция длится от 4 до 23 тактов, получаем сдвиг начала исполнения ISR от кадрового синхроимпулься на 0-38 точек. Изображение на бордере будет хаотично дрожать в этих пределах, потому что для обычного кода, учитывая условные переходы, невозможно гарантировать стабильного времени исполенения по тактам. И это ещё не всё. Допустим код всегда исполняется фиксированное число тактов, кратное 4-м. И в конце кадра стоит HALT (по сути серия 4-х тактовых NOP). Всё равно остаётся проблема смещения бордера на 0-3 такта (0-6 точек), потому что неизвестно что исполнял процессор до нашего кода. Требуется хитрая пре-синхронизация при запуске, с подсчётом оставшегося времени в кадре. Но и это ещё не всё. Одна строка растра это 224 такта процессора. За это время надо успеть нарисовать растр, и несколько раз сделать I/O изменяющее бордер (мы же рисуем на бордере, а не просто цвет меняем). А это непросто, учитывая что IO жрёт 11-12 тактов, 8 битная запись в память от 7, запись через стек 11, и вообще минимальное время исполнения инструкции это 4 такта. Тут требуется филиграннейшая оптимизация, с выверенностью по тактам КАЖДОЙ инструкции. В фирменных моделях фарша добавляет Contended видеопамять и Contended I/O при отображении растра. А ты говоришь особой точности не надо, смешной
V>Мы делали так: замеряли тактовую конкретного проца (какая там получалась на кварце уже в схеме) до 8-й значащей цифры, и прошивали в конкретный экземпляр 24-разрядный коэф в ПЗУ. Програма писалась так, что полный цикл в любом из режимов был на одинаковое кол-во тактов. Примерно как в сигнальных процессорах.
Полный цикл на одинаковое число тактов это малая из проблем, если сравнивать с рисованием на бордере.
Здравствуйте, IID, Вы писали:
IID>А причём тут СССР ? И графические дисплеи вовсю уже применялись на западе. Так что идея поставить его на персоналку очевидна. Вопрос только в стоимости изделия. И тут выстрелил Возняк
Да, вопрос был в стоимости. Не было смысла сразу вкладываться в неизведанную доселе нишу графики на персоналках и задирать цену девайса тем самым.
IID>Корвет тоже говно изрядное Убогий КР580 на 2.5мгц и графический экран на 64килобайта это даже не смешно. Приведи пример быстрой графики на Корвете. С твоим любимым плавным скроллом особливо wanted
Графика не быстрая, но крайне удобная во всем, что не касается динамических видеоигр.
IID>Процессор — да. Потому что копия легендарного PDP-11. А всё остальное криво и косо
Там копия только системы команд, а не микропроцессора. Не было у DEC никакого микропроцессора на момент разработки. И то, начиная с К1801ВМ2 стали развивать систему команд в собственном направлении.
IID>Да нифига не нормально. Ты видел выхлоп кодогенератора ? Он примитивный и наитупейший. Прогу на асме написать более чем реально. Объёмы тогда были поскромнее чем сейчас. Типичная программа это несколько килобайт кода и несколько десятков килобайт данных. Я, например, в 95-ом игру целиком на асме написал, платформер/квест с плавными спрайтами, фоновой AY-музыкой и цветными детальными локациями. 8кб чистого кода (несколько тысяч строк сорца) и ещё килобайт 40 ресурсов, есс-по пожатых. На моделях с 128кб РАМ были ещё и финалкаты. С другой стороны я не видел ни одной фирменной игры с красочной, быстрой графикой или системной программы, быстрой, надёжной и компактной, которые были бы написаны с использованием ЯВУ. АСМ, чистый АСМ и только он.
Поздновато в 95-м игры на асме писать.
Спорить не буду. На асме отпахал почти 4 года, и одновременно с этим было сделано куча другого софта для эмуляции, расчетов, обслуживания самодельной периферии и даже собственные макроассемблеры. Писать всё это добро на асме было бы нелепо. Зато сами проги в однокристалках, как раз в районе 4-8к бинарного кода — разумеется на чистом асме. Но это же железка, фактически, хоть и на программируемом кристалле сделана...
IID>Может на совковых калеках и писали на ЯВУ, это косвенно подтверждается отвратительным качеством всего софта, за редкими исключениями, которые, я уверен, были написаны польностью на АСМе.
Ты как из параллельной вселенной... А компиляторы, а все расчетные проги, а текстовые редакторы, а электронные таблицы, а инженерные пакеты? На чистом асме оправданно было только видеоигры и писать. И то, во многих играх высокоуровневая логика пользовала внутренний интерпретатор бейсика. Это заодно заметно уменьшало объем программы.
V>>А ты текст на Синклерах набивал когда-нибудь? IID>Конечно. И на 48к, и на более позднем 128к с раширенной клавиатурой.
Ужас... Учитывая кол-во знакомест. Более поздний был юзабелен только в режиме CP/M (выбираемый при перезагрузке, т.к. там другая геометрия знакомест), но это совсем другой комп получался, несовместимый в этом режиме с накопленным для первоначального Синклера ПО.
V>>Ничего... Просто это не совсем компьютер, только и всего. Электронная игрушка, разве что. IID>С такой логикой электронными игрушками в то время было всё, что стоило дешевле 3-5 тысяч баксов.
Корветы дешевле стоили, если что...
V>>Отсюда специфика синкреровских игрушек — максимум двухцветный задний фон. Монохромный т.е. IID>Бугага. Я ж тебе в прошлом псто целую пачку цветных плавных скроллов(!!!) привёл.
Во первых, целиком экран не плавно ни разу. Наверно у нас таки разное представление о плавности. Все эти игры были пощупаны еще сто лет назад. Быстро скроллить не есть плавно. Плавно — это со строго постоянной скоростью, кратной развертке, причем без видимых артефактов (когда во время скролла нижние пол-экрана на пиксель обгоняет верхнюю). Я наблюдал true плавность только при скролле части экрана.
IID>А цветных статических задников было чуть ли не 80% от всех игр. Вот где монохром был — так это на БК. Потому что три кислотных цвета черзчур вырвиглазны.
Неудачно я подобрал выражение "монохром"... Просто когда в заднике только два цвета, это не далеко ушло от белый/черный. Если цветов больше, то при скролле без артефактов никак. Ну и движущиеся спрайты тоже по разному окрашиваются. Например в популярном арканоиде Batty.
V>>>>А по быстродействию некоррестно сравнивать компы с 5-тилетней разницей в дизайне. Когда вышел Синклер, Эппл вовсю работал над Маками. IID>>>Ну то есть ты согласен, что синклер был гораздо прогрессивнее Эпла. А то началось "полуграфика", "только потому что дешевле" и прочее. Ч.Т.Д.
Из всей прогрессивности вижу только более новый проц. Видеоподсистема такая же убогая.
V>>Тю, блин. Корвет еще прогрессивнее их обоих, и что с того? IID>Ты делаешь меня смеяться. Чем же это корвет был прогрессивнее ? Убогий процессор на низкой частоте и жирнейший экран в 64кб. В чём прогресс-то ? Покажи мне быструю плавную графику на корвете. На ZX вбиваешь Youtube ZX-Spectrum Demo и смотришь. Ни для одного совкового высера подобных по уровню демок не существуюет. Да что там далеко ходить, даже игры драли со спектрума, драли безжалостно, но получалось ужасно и убого, близко не так как в оригинале.
Корвет не игровой компьютер, однако. А графика там отличная. Я курсовые и расчеты на нем делал аж бегом по студенчеству. Это при том, что дома валялась вязанка синклеров, на которых кроме как играть и баловаться с асмом было больше нечего делать. На Корветах был нормальный текстовый редактор, электронные таблицы, форт, фортран, возможность построить красивые графики и т.д. Полезная машинка.
V>>>>Мегаерунда. На фоне плавного скрола и полноцветных спрайтов Атари, Синклер смотрелся совсем бледно.
IID>А давай-ка вспомним про ограничения таких аппаратных решений:
IID>Аппаратный скролл IID>1) Умеет скроллить только весь экран целиком. Неподвижные элементы сделать невозможно. Хорошо если видеоконтролллер поддерживает изменение параметров скролла в течении формирования кадра и есть прерывание по счётчику строк растра, как в NES. Тогда можно какую-то полосу экрана не скроллить, сделав из неё панель статуса, а другие — скроллить. IID>2) При тайловой организации (NES, Sega, SNES и т.д.) нет попиксельного доступа к видеопамяти, да и общее число тайлов ограничено. Поэтому ни векторной графики нормальной, и пиксельных эффектов, ничего. Даже при пиксельной организации часто обновление отдельных пикселей — проблема. Например на Yamaha MSX это делалось через ужасно тормозное I/O, вместо прямого доступа к памяти.
Я бы предпочел сравнивать более популярные атари/амиги/командоры.
IID>аппаратные спрайты IID>1) общее количество спрайтов. Преодолевается мозголомным перепрограммированием видеоконтроллера на лету, во время формирования кадра. И хорошо, если есть прерывание по счётчику строк растра, как в NES. А если нету ?
А если нету, то часть спрайтов софтовая, как в компах без поддержки спрайтов.
IID>2) количество спрайтов на одной строке растра, все сверхнормы просто не отображаются. Не предолевается никак. Есть костыльное решение — отображать в разных кадрах разные спрайты. При этом они начинают дико мерцать. Все помнят это мерцание по NES/Денди играм.
V>>Наверно ты не понимаешь, что есть плавный скролл в любом направлении. IID>Прекрасно понимаю. Я тебе привёл игры с плавным и цветным скроллом. Ознакомся.
Ознакомился давно. Это не есть плавно в сравнении с конкурентами.
IID>Не гони, не надо ничего отличать. Растеризация кадра делается целиком всегда. Никакой черезстрочной развёртки на Спектруме нету. Прогрессивная с прореживанием.
Количество строк в спектруме вдвое меньше, чем нужных строк развертки, да еще синяя и красная цветоразностные в ПАЛ должны идти черезстрочно. Так что я не в курсе, о каком прореживании речь. Может ты имел ввиду, что нечетный кадр не имеет смещения на пол-строки относительно четного? Дык это от схемы клона зависит. Там кто во что горазд был. Оригинальный синклер я в руках не держал, если что, ХЗ как там.
V>>>>Не такое уж унылое, особенно с появлением тонны клонов. Весьма популярная машинка для офисных и инженерных нужд.
IID>>>Унылое. До середины 90х по графике, мультимедийным возможностям и цене ПЦ уверенно сливали Амигам. Будешь спорить ?
V>>Буду, конечно. Потому что у нас вся разработка почему-то шла под PC, вернее под шину ISA... А твоя Амига сдохла от своей закрытости и плохой расширяемости. Конечно... если поиграть в игрухи, то то это Амига... А если заниматься разработкой — несомненно PC.
IID>Ты меня вообще не читаешь ? Выделил ключевое. Теперь оспаривай.
А что тут оспаривать. Ты пытаешься сравнивать игровые погремухи с мини-рабочими станциями. PC, DEC и Маки — это были бизнес-компы, а не игровые. Отсюда и разница в цене. Сравни хотя бы габариты.
V>>Конечно, в плане популярности — несомненный хит. IID>Как офисная печатная машинка разве что, но не как персональный компьютер. Тут ему до амиги как раком до луны.
Ты продолжаешь игнорировать шины расширения. А ведь уже вовсю компы вязались в локальные сетки, где диски были на одном компе, принтеры на другом и т.д.
Я не спорю, последние Амиги были очень неплохи. Но они опоздали относительно 386-х лет на 5 минимум, и шли практически без софта и инфраструктуры.
Я и сам недоумевал в начале 90-х, как такая тормознутая и неудобная архитектура x86 вытеснила отличные 68к или микропроцессорные клоны PDP-11. Если бы сделать им "reset" истории и попробовать выпустить в конкуренцию одновременно на равных, то x86 умер бы буквально сразу... Однако же, остались только PC и Маки.
V>>А толку без ПО? ДВК-4 тоже от AT по графике не отставали, однако же сдохли вполне успешно, как и Амига. IID>ПО было навалом, гораздо больше чем для ПЦ. Не ПО оказалось ахиллесовой пятой Амиг, а закрытая архитектура и дибильный менеджмент.
Не видел я навалом ПО для Амиги. Игрушек полно. Электронную таблицу не видел.
IID>Какая феерическая чушь! Объясняю на пальцах: за один такт CPU видеоконтроллер успевает нарисовать 2 точки. Прерывание не придёт раньше окончания исполнения текущей инструкции. А т.к. инструкция длится от 4 до 23 тактов, получаем сдвиг начала исполнения ISR от кадрового синхроимпулься на 0-38 точек. Изображение на бордере будет хаотично дрожать в этих пределах, потому что для обычного кода, учитывая условные переходы, невозможно гарантировать стабильного времени исполенения по тактам. И это ещё не всё. Допустим код всегда исполняется фиксированное число тактов, кратное 4-м. И в конце кадра стоит HALT (по сути серия 4-х тактовых NOP). Всё равно остаётся проблема смещения бордера на 0-3 такта (0-6 точек), потому что неизвестно что исполнял процессор до нашего кода. Требуется хитрая пре-синхронизация при запуске, с подсчётом оставшегося времени в кадре. Но и это ещё не всё. Одна строка растра это 224 такта процессора. За это время надо успеть нарисовать растр, и несколько раз сделать I/O изменяющее бордер (мы же рисуем на бордере, а не просто цвет меняем). А это непросто, учитывая что IO жрёт 11-12 тактов, 8 битная запись в память от 7, запись через стек 11, и вообще минимальное время исполнения инструкции это 4 такта. Тут требуется филиграннейшая оптимизация, с выверенностью по тактам КАЖДОЙ инструкции. В фирменных моделях фарша добавляет Contended видеопамять и Contended I/O при отображении растра. А ты говоришь особой точности не надо, смешной
V>>Мы делали так: замеряли тактовую конкретного проца (какая там получалась на кварце уже в схеме) до 8-й значащей цифры, и прошивали в конкретный экземпляр 24-разрядный коэф в ПЗУ. Програма писалась так, что полный цикл в любом из режимов был на одинаковое кол-во тактов. Примерно как в сигнальных процессорах. IID>Полный цикл на одинаковое число тактов это малая из проблем, если сравнивать с рисованием на бордере.
11-12 тактов на IO, умножить на 2 пикселя, получается, что на бордере можно рисовать только полоски. И этого я видел полно. Далее. С помощью фазовой автоподстройки можно буквально за несколько циклов развертки подстроиться с точностью до 1-го NOP на момент прерывания. Потом запретить эти прерывания и тупо использовать фиксированный в тактах цикл, как это всегда делается на железках или сигнальных процах. Я че-то в упор не могу проникнуться описываемой проблемой. Откуда там берется филигранность. Меньше 1-го NOP ты все-равно не сделаешь. А остальное банально, ведь схема синхронная, т.е. развертка идет от той же тактовой, которой запитан проц. Поэтому, при запрещенных прерываниях расхождение в принципе невозможно. Т.е. не проблема будет попадать в одну и ту же точку на каждой развертке.
Здравствуйте, vdimas, Вы писали:
IID>>Процессор — да. Потому что копия легендарного PDP-11. А всё остальное криво и косо
V>Там копия только системы команд, а не микропроцессора. Не было у DEC никакого микропроцессора на момент разработки. И то, начиная с К1801ВМ2 стали развивать систему команд в собственном направлении.
Спасибо кэп =)
IID>>Да нифига не нормально. Ты видел выхлоп кодогенератора ? Он примитивный и наитупейший. Прогу на асме написать более чем реально. Объёмы тогда были поскромнее чем сейчас. Типичная программа это несколько килобайт кода и несколько десятков килобайт данных. Я, например, в 95-ом игру целиком на асме написал, платформер/квест с плавными спрайтами, фоновой AY-музыкой и цветными детальными локациями. 8кб чистого кода (несколько тысяч строк сорца) и ещё килобайт 40 ресурсов, есс-по пожатых. На моделях с 128кб РАМ были ещё и финалкаты. С другой стороны я не видел ни одной фирменной игры с красочной, быстрой графикой или системной программы, быстрой, надёжной и компактной, которые были бы написаны с использованием ЯВУ. АСМ, чистый АСМ и только он.
V>Поздновато в 95-м игры на асме писать. V>Спорить не буду. На асме отпахал почти 4 года, и одновременно с этим было сделано куча другого софта для эмуляции, расчетов, обслуживания самодельной периферии и даже собственные макроассемблеры. Писать всё это добро на асме было бы нелепо. Зато сами проги в однокристалках, как раз в районе 4-8к бинарного кода — разумеется на чистом асме. Но это же железка, фактически, хоть и на программируемом кристалле сделана...
IID>>Может на совковых калеках и писали на ЯВУ, это косвенно подтверждается отвратительным качеством всего софта, за редкими исключениями, которые, я уверен, были написаны польностью на АСМе.
V>Ты как из параллельной вселенной... А компиляторы, а все расчетные проги, а текстовые редакторы, а электронные таблицы, а инженерные пакеты?
Ты не поверишь Но это всё писалось на АСМе. Говорю же, объёмы тогда были другие, а вот быстродействие и компактность это мега-узкое место компьютеров тех лет. И никакие ЯВУ, даже кросс-ЯВУ на более мощных машинах, не способны кардинально переломить ситуацию.
V>На чистом асме оправданно было только видеоигры и писать.
Не просто на чистом асме, а на высокооптимизированном асме. Когда все внутренние циклы раскрывались, использовались только самые быстрые инструкции и алгоритмы, вычисления по максимуму заносились в регистры, всё что только возможно кешировалось, таблички выровненные на границу быстрого доступа. А учитывая что регистры в 8080 и Z-80 нифига не симметричные, то один и тот же алгоритм можно выразить в АСМе с разницей в скорости на порядки.
V>И то, во многих играх высокоуровневая логика пользовала внутренний интерпретатор бейсика. Это заодно заметно уменьшало объем программы.
Чушь и ересь Никто внутренний интерпретатор бейскика не юзал. (Самые тривиальные и идиотские игры в рассчёт не берём). Даже Elite с её wired-3D графикой и кучей математики все рассчёты выполняла самостоятельно, через целочисленные операции. В частности умножение было сделано через таблицу квадратов.
V>>>А ты текст на Синклерах набивал когда-нибудь? IID>>Конечно. И на 48к, и на более позднем 128к с раширенной клавиатурой.
V>Ужас... Учитывая кол-во знакомест.
Никто ведь гвоздями символы к байтам не прибивал, как в аппаратных текстовых режимах. Рисуй попиксельно как угодно. Даже не-моноширинные шрифты (например оконные интерфейсы Пита Кука, Николая Родионова). Или моноширинные с другой шириной символа. 42 символа в строке (6 pix ширина) было нормой (нампример отладчик STS и ассмблер XAS). Так же были популярны 51 символ в строке (5 pix шипина) например в ассемблере GENS4D. А если юзался нормальный монитор с чёткими пикселями — то и 64символа в строке (ползнакоместа на символ). Очень быстрый и компактный вывод символов (например ассемблер TASM, MASM).
V>Более поздний был юзабелен только в режиме CP/M (выбираемый при перезагрузке, т.к. там другая геометрия знакомест), но это совсем другой комп получался, несовместимый в этом режиме с накопленным для первоначального Синклера ПО.
Ты путаешь. В 128к не было других видеорежимов. Новые видеорежимы были в британском клоне Sam Coupe, в советских клонах ATM-Turbo и Profi, а так же режим 512х192 в виде несложной доработки.
V>>>Ничего... Просто это не совсем компьютер, только и всего. Электронная игрушка, разве что. IID>>С такой логикой электронными игрушками в то время было всё, что стоило дешевле 3-5 тысяч баксов.
V>Корветы дешевле стоили, если что...
Корветы было купить нереально. И с экраном, большим по размеру чем всё ОЗУ машины это игрушка и есть.
V>>>Отсюда специфика синкреровских игрушек — максимум двухцветный задний фон. Монохромный т.е. IID>>Бугага. Я ж тебе в прошлом псто целую пачку цветных плавных скроллов(!!!) привёл.
V>Во первых, целиком экран не плавно ни разу. Наверно у нас таки разное представление о плавности. Все эти игры были пощупаны еще сто лет назад. Быстро скроллить не есть плавно. Плавно — это со строго постоянной скоростью, кратной развертке
FireFly же, попиксельный скроллинг во фрейм
V>, причем без видимых артефактов (когда во время скролла нижние пол-экрана на пиксель обгоняет верхнюю).
Это и есть tear-инг.
IID>>А цветных статических задников было чуть ли не 80% от всех игр. Вот где монохром был — так это на БК. Потому что три кислотных цвета черзчур вырвиглазны.
V>Неудачно я подобрал выражение "монохром"...
Угу, потому что статический цветной задник на спектруме по яркости, цветастости, и красочности легко уделывал всякие БК, в которых хоть и не было клешинга, но цветов было всего 3.
Кстати, клешинг это не чисто-синклеровское явление. На MSX был видеорежим с такими же раздельными атрибутами. Только атрибутов было в 8 раз больше. Красился не квадрат 8х8 точек, а линия в 8х1 точек.
V>Просто когда в заднике только два цвета, это не далеко ушло от белый/черный. Если цветов больше, то при скролле без артефактов никак. Ну и движущиеся спрайты тоже по разному окрашиваются. Например в популярном арканоиде Batty.
в арканоидах как раз проблемы с клешингом минимальные. Спрайты красим в любые цвета за счёт чёрного фона. А кирпичи делаем кратными размеру знакоместа.
V>>>>>А по быстродействию некоррестно сравнивать компы с 5-тилетней разницей в дизайне. Когда вышел Синклер, Эппл вовсю работал над Маками IID>>>>Ну то есть ты согласен, что синклер был гораздо прогрессивнее Эпла. А то началось "полуграфика", "только потому что дешевле" и прочее. Ч.Т.Д.
V>Из всей прогрессивности вижу только более новый проц. Видеоподсистема такая же убогая.
Видеоподсистема гениальная в том плане что и более цветастая, и экран очень компактный. На неё Викерсу даже патент выдали.
V>>>Тю, блин. Корвет еще прогрессивнее их обоих, и что с того? IID>>Ты делаешь меня смеяться. Чем же это корвет был прогрессивнее ? Убогий процессор на низкой частоте и жирнейший экран в 64кб. В чём прогресс-то ? Покажи мне быструю плавную графику на корвете. На ZX вбиваешь Youtube ZX-Spectrum Demo и смотришь. Ни для одного совкового высера подобных по уровню демок не существуюет. Да что там далеко ходить, даже игры драли со спектрума, драли безжалостно, но получалось ужасно и убого, близко не так как в оригинале.
V>Корвет не игровой компьютер, однако. А графика там отличная. Я курсовые и расчеты на нем делал аж бегом по студенчеству. Это при том, что дома валялась вязанка синклеров, на которых кроме как играть и баловаться с асмом было больше нечего делать. На Корветах был нормальный текстовый редактор, электронные таблицы, форт, фортран, возможность построить красивые графики и т.д. Полезная машинка.
Я на спектруме тоже делал рассчёты. И в школе, и на 1-ом курсе, пока ПЦ не обзавёлся. И отличнейшие текстовые редакторы на нём были. Правда ЯВУ не увлекался. А текст, графика, рассчёты — всё на синклере было замечательным. И быстрыми, что важно. А не со скоростью улитки, как на Корвете. Если ты не в курсе — то на спектруме бейсик программа хранится в виде токенов, а не текста (знаменитый по-токенный набор в 48к режиме). То есть байткод в чистом виде. Именно поэтому даже некомпилированные бейсик программы работали быстрее, чем на более мощном 16битным процессоре БКшки. Кроме того существовали расширенные диалекты бейсика. Например Laser Basic, BetaBasic, MegaBasic, PRO-DOS, которые вносили в язык мощные возможности. Звуковые, математические, графические. По рисованию текстов, окон, и прочего. Компиляторов для бейсика было навалом. И целочисленные, и с поддержкой FP, и даже для расширенного диалекта Laser Basic.
V>>>>>Мегаерунда. На фоне плавного скрола и полноцветных спрайтов Атари, Синклер смотрелся совсем бледно.
IID>>А давай-ка вспомним про ограничения таких аппаратных решений:
IID>>Аппаратный скролл IID>>1) Умеет скроллить только весь экран целиком. Неподвижные элементы сделать невозможно. Хорошо если видеоконтролллер поддерживает изменение параметров скролла в течении формирования кадра и есть прерывание по счётчику строк растра, как в NES. Тогда можно какую-то полосу экрана не скроллить, сделав из неё панель статуса, а другие — скроллить. IID>>2) При тайловой организации (NES, Sega, SNES и т.д.) нет попиксельного доступа к видеопамяти, да и общее число тайлов ограничено. Поэтому ни векторной графики нормальной, и пиксельных эффектов, ничего. Даже при пиксельной организации часто обновление отдельных пикселей — проблема. Например на Yamaha MSX это делалось через ужасно тормозное I/O, вместо прямого доступа к памяти.
V>Я бы предпочел сравнивать более популярные атари/амиги/командоры.
Амиги и Атари мимо кассы. Те, которые 16 и 32 бита. А вот 8битные комодоры и 8битные Атари можно сравнить, да. Там точно такие же ограничения.
IID>>аппаратные спрайты IID>>1) общее количество спрайтов. Преодолевается мозголомным перепрограммированием видеоконтроллера на лету, во время формирования кадра. И хорошо, если есть прерывание по счётчику строк растра, как в NES. А если нету ?
V>А если нету, то часть спрайтов софтовая, как в компах без поддержки спрайтов.
Очень сомневаюсь. Для софтовых спрайтов в хайрез режиме надо слишком много приседаний сделать. А давай вот как. Ты сообщаешь мне популярную игру с софтовыми (якобы) спрайтами. А потом разбираемся в ней, или не было
IID>>2) количество спрайтов на одной строке растра, все сверхнормы просто не отображаются. Не предолевается никак. Есть костыльное решение — отображать в разных кадрах разные спрайты. При этом они начинают дико мерцать. Все помнят это мерцание по NES/Денди играм.
Тут сказать нечего, как я понимаю ?
V>>>Наверно ты не понимаешь, что есть плавный скролл в любом направлении. IID>>Прекрасно понимаю. Я тебе привёл игры с плавным и цветным скроллом. Ознакомся.
V>Ознакомился давно. Это не есть плавно в сравнении с конкурентами.
В 50 fps я игру уже приводил. 25 fps на практике более чем достаточно для играбельности. Но самое важное — спектрум это тянул СОФТВЕРНО, без аппаратной акселерации. На это ни один комп тех лет способен не был.
IID>>Не гони, не надо ничего отличать. Растеризация кадра делается целиком всегда. Никакой черезстрочной развёртки на Спектруме нету. Прогрессивная с прореживанием.
V>Количество строк в спектруме вдвое меньше, чем нужных строк развертки, да еще синяя и красная цветоразностные в ПАЛ должны идти черезстрочно. Так что я не в курсе, о каком прореживании речь. Может ты имел ввиду, что нечетный кадр не имеет смещения на пол-строки относительно четного?
Не имеет. Одна строка идёт обычная, вторая чёрная. Всего в спектруме 312 строк в кадре с изображением и 312 пустых.
V>Дык это от схемы клона зависит. Там кто во что горазд был. Оригинальный синклер я в руках не держал, если что, ХЗ как там.
Так было сделано всех клонах. Разница была только в количестве строк над бордером (64, 63, 80), и количеством тактов в строке (224, 228).
V>>>>>Не такое уж унылое, особенно с появлением тонны клонов. Весьма популярная машинка для офисных и инженерных нужд.
IID>>>>Унылое. До середины 90х по графике, мультимедийным возможностям и цене ПЦ уверенно сливали Амигам. Будешь спорить ?
V>>>Буду, конечно. Потому что у нас вся разработка почему-то шла под PC, вернее под шину ISA... А твоя Амига сдохла от своей закрытости и плохой расширяемости. Конечно... если поиграть в игрухи, то то это Амига... А если заниматься разработкой — несомненно PC.
IID>>Ты меня вообще не читаешь ? Выделил ключевое. Теперь оспаривай.
V>А что тут оспаривать. Ты пытаешься сравнивать игровые погремухи с мини-рабочими станциями. PC, DEC и Маки — это были бизнес-компы, а не игровые. Отсюда и разница в цене. Сравни хотя бы габариты.
Игровые погремухи это приставки, типа денди. Амиги имели хорошую клавиатуру, отличную графику и звук, быстрый процессор. Ты выше легко сделал из Корвета нормальный комьютер только за графрежим цвет-на-точку. А теперь противоречишь сам себе, называя хорошую графику признаком "погремухи".
V>Я и сам недоумевал в начале 90-х, как такая тормознутая и неудобная архитектура x86 вытеснила отличные 68к или микропроцессорные клоны PDP-11. Если бы сделать им "reset" истории и попробовать выпустить в конкуренцию одновременно на равных, то x86 умер бы буквально сразу... Однако же, остались только PC и Маки.
Это могло бы случиться ещё раньше, с появлением Sinclair QL. 84-ый год однако, а уже 32 бита в недорогой персоналке. Но не случилось, к сожалению.
V>>>А толку без ПО? ДВК-4 тоже от AT по графике не отставали, однако же сдохли вполне успешно, как и Амига. IID>>ПО было навалом, гораздо больше чем для ПЦ. Не ПО оказалось ахиллесовой пятой Амиг, а закрытая архитектура и дибильный менеджмент.
V>Не видел я навалом ПО для Амиги. Игрушек полно. Электронную таблицу не видел.
V>11-12 тактов на IO, умножить на 2 пикселя, получается, что на бордере можно рисовать только полоски. И этого я видел полно.
Полоски полоскам рознь Учитывая что их можно сдвигать на 2 пикселя в любую сторону задержкой в 1 такт. На бордере делали бегущую строку, в которой буквы вылетая из бордера летели по растру и улетали обратно на бордер (hidden part в деме Insult). Или цветной "зонтик" из закрашенных секторов, вращающийся через весь экран, включая бордер (последняя часть в деме Rage). Это легко гуглится на ютубе. Посмотри.
V>Далее. С помощью фазовой автоподстройки можно буквально за несколько циклов развертки подстроиться с точностью до 1-го NOP на момент прерывания. Потом запретить эти прерывания и тупо использовать фиксированный в тактах цикл, как это всегда делается на железках или сигнальных процах.
Так и делалось.
V>Я че-то в упор не могу проникнуться описываемой проблемой. Откуда там берется филигранность. Меньше 1-го NOP ты все-равно не сделаешь.
В том-то и дело, что сделаешь Код разбавлялся мусорными инструкциями так, чтобы давать нужные задержки с точностью до 1 такта. А т.к. время исполнения сильно кричино — использовалось динамическое программирование, кода один код генерировал другой, в зависимости от требуемой картинки.
V>А остальное банально, ведь схема синхронная, т.е. развертка идет от той же тактовой, которой запитан проц. Поэтому, при запрещенных прерываниях расхождение в принципе невозможно. Т.е. не проблема будет попадать в одну и ту же точку на каждой развертке.
Проблема согласовать IO так, чтобы не только получилась картина, но она же ещё совпала с растром, при это перерисовать растр, и так каждый кадр. Понятно что один раз сгенерить код для статической картинки не очень сложно. Можно тупым подбором даже.
Здравствуйте, IID, Вы писали:
IID>Если ты не в курсе — то на спектруме бейсик программа хранится в виде токенов, а не текста
На БК тоже. Хоть и без синклеровских извратств на тему одна клавиша-один кейворд.
IID>То есть байткод в чистом виде
Даже близко не. Байткод это семантическая структура, а синклеровские и бкшные вариации это структура синтаксическая, только записанная чуть более компактно.
IID>. Именно поэтому даже некомпилированные бейсик программы работали быстрее, чем на более мощном 16битным процессоре БКшки.
Ну ты уже все понял, да?
И насчет большей мощности — 16-тибитный, да, только частота у него в БК-0010 была 300 КГц. А у самых тормозных Z80, если помнишь, 1МГц. В БК-0011 частота была уже 800МГц и на бейсике он уделывал спекки, как бог черепаху, в разы.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Здравствуйте, IID, Вы писали:
IID>>Если ты не в курсе — то на спектруме бейсик программа хранится в виде токенов, а не текста
НС>На БК тоже.
Да ну ? на БК, если не изменяет склероз, вполне возможно было набрать синтаксически некорректную программу. И ломалась она в рантайме, когда исполнение доходило. В синклере такое невозможно принципиально.
Одна строка программы (логическая строка) может занимать несколько
символьных строк экрана (физических строк) и состоять не более, чем из
255 символов.
Первая ласточка, указывающая на текстовое хранение БКшной бейсик-программы.
НС> Хоть и без синклеровских извратств на тему одна клавиша-один кейворд.
Невладение предметом detected. У синклера клавиша выдавала до 5 значений. Из них до 3 кивордов. В режимах [K], [E], и [E] + Symbol Shift.
IID>>То есть байткод в чистом виде
НС>Даже близко не. Байткод это семантическая структура, а синклеровские и бкшные вариации это структура синтаксическая, только записанная чуть более компактно.
Это ты сам так решил ? Ок, если придираться к терминам — это не байткод, а P-код. Что всё равно не отменяет сути.
IID>>. Именно поэтому даже некомпилированные бейсик программы работали быстрее, чем на более мощном 16битным процессоре БКшки.
НС>Ну ты уже все понял, да? НС>И насчет большей мощности — 16-тибитный, да, только частота у него в БК-0010 была 300 КГц. А у самых тормозных Z80, если помнишь, 1МГц. В БК-0011 частота была уже 800МГц
300кгц ? 1мгц ? 800мгц ? С какого потолка цифры ? Тактовая частота у БК 3 или 4 мгц, у Z-80 4мгц, но в Синклерах 3.5 мгц. Были схемы турбирования БК до 5, а Синклера до 7.
НС>и на бейсике он уделывал спекки, как бог черепаху, в разы.
Ну вот не гони. Нифига он не уделывал. Круги рисовал быстрее, разве что. Потому что рисовал только сектор 1/8 окружности, а остальные пиксели зеркалировал. У него даже вывод текста был настолько заторможенным, что глаз успевал заметить прорисовку символов. Чисто теоретически у БКного бейсика был отдельный целочисленный тип переменных (а также FP одинарной и двойной точности). У Синклера все числа FP. Но не тот IEEE-шый FP, к которому мы все привыкли, а более хитрый. 5-байтовый. Если в такое число записать 16битный signed short, то он чётко окажется во 2ом и 3ем байте, а остальные будут нулями. Таким образом спектрум работал с целыми числами с такой же скоростью, как если бы у него был отдельный тип для них.
В чистом асме разрыв становился ещё более фатальным (см. игры и демки на обоих платформах).
Дык ещё классик сказал, что в основе любого крупного капитала лежит преступление.
Т.е. любой крупный бизнесмен с общечеловеческой точки зрения мразь и подонок
Здравствуйте, IID, Вы писали:
НС>>На БК тоже.
IID>Да ну ?
Точно тебе говорю. Помнится, даже лабораторка такая была, через PEEK достать программу из памяти и изучить как оно там хранится.
IID> на БК, если не изменяет склероз, вполне возможно было набрать синтаксически некорректную программу.
Изменяет.
IID>Первая ласточка, указывающая на текстовое хранение БКшной бейсик-программы.
В синклере тоже, по сути, текстовое. То, что кейворды заменялись кодами, это ничего принципиально не меняло.
НС>>Даже близко не. Байткод это семантическая структура, а синклеровские и бкшные вариации это структура синтаксическая, только записанная чуть более компактно.
IID>Это ты сам так решил ?
Это так на самом деле.
IID> Ок, если придираться к терминам — это не байткод, а P-код.
P-код расшифровывается как precompiled. И нет, спекковоское представление программы не было p-кодом. Вот VB, там уже был настоящий р-код, и текст программы из него не восстанавливался, а хранился отдельно. Полное же и однозначное восстановление текста программы, с комментариями в том числе, совершенно однозначно свидетельствует о хранении именно текста, пусть и не в plain виде.
IID> Что всё равно не отменяет сути.
А суть в том, что в спектрумовском бейсике хранился именно текст, а не код.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>В синклере тоже, по сути, текстовое. То, что кейворды заменялись кодами, это ничего принципиально не меняло.
IID>> Ок, если придираться к терминам — это не байткод, а P-код.
НС>P-код расшифровывается как precompiled. И нет, спекковоское представление программы не было p-кодом. Вот VB, там уже был настоящий р-код, и текст программы из него не восстанавливался, а хранился отдельно. Полное же и однозначное восстановление текста программы, с комментариями в том числе, совершенно однозначно свидетельствует о хранении именно текста, пусть и не в plain виде.
То есть возможность восстановления имён переменных и комментариев отличает p-код от не p-кода ? Не соглашусь. Там прекомпиляция по полной программе была. Во-первых исчезала необходимость в лексическом разборе текста программы, каждый токен представлялся одним байтом, и исполнение сводилось к switch-case с константной сложностью (по табличке). Во-вторых все числовые значения сразу же преобразовывались в бинарный FP формат, не требуя никаких затрат в рантайме. В третьих для каждой строки сразу рассчитывалась её длина. И переход к следующей строке сводился к 16битному сложению. Неоптимальными были только переходы (GOTO, GOSUB) которые искали целевую строку пробегая по всей программе. Поэтому стоимость перехода в конец программы была выше, и все подпрограммы рекомендовалось размещать в начале.
Именно поэтому компиляция бейсик-программ давала на практике не очень большой выигрыш (от десятков процентов до нескольких раз). Потому что ускорять было почти нечего. Переходы делались фиксированными (многие компиляторы обламывались на переходах с вычисляемым номером строки), выборка токенов заменялась на вызов подпрограмм, а короткие подпрограммы инлайнились. FP заменялся на целочисленные вычисления во всех случаях, жертвуя точностью. Либо на собственную реализацию FP (например в компиляторе TobosFP). Дальнейшая оптимизация была возможна только за счёт замены рутин из ROM на специализированные версии. Например PRINT переставал работать с каналами и потоками, зато значительно ускорялся.
IID>> Что всё равно не отменяет сути.
НС>А суть в том, что в спектрумовском бейсике хранился именно текст, а не код.
Суть в том, что такая организация исключала затраты на парсер, лексер, преобразование в FP и ускоряла выполнение в разы, вплотную приближаясь к компилированному варианту.
Здравствуйте, IID, Вы писали:
IID>То есть возможность восстановления имён переменных и комментариев отличает p-код от не p-кода ?
Нет, это просто один из признаков. Главное же отличие — что именно хранится. Если синтаксические структуры — не р-код, если семантические — он самый.
IID>Там прекомпиляция по полной программе была.
Не было ее там. Прекомпиляция и парсинг, это совсем не одно и то же. А в спектруме даже парсинга, как такового, особо и не было, кроме выражений и констант.
НС>>А суть в том, что в спектрумовском бейсике хранился именно текст, а не код.
IID>Суть в том, что такая организация исключала затраты на парсер, лексер, преобразование в FP и ускоряла выполнение в разы, вплотную приближаясь к компилированному варианту.
К компилированному варианту она не приближалась, да и не могло быть никакой нормальной компиляции динамического бейсика тогда. Ну и, возвращаясь к началу, в БК была примерно такая же схема, может чуть погибче.
Здравствуйте, IID, Вы писали:
IID>Здравствуйте, Ночной Смотрящий, Вы писали:
НС>>В синклере тоже, по сути, текстовое. То, что кейворды заменялись кодами, это ничего принципиально не меняло.
IID>>> Ок, если придираться к терминам — это не байткод, а P-код.
НС>>P-код расшифровывается как precompiled. И нет, спекковоское представление программы не было p-кодом. Вот VB, там уже был настоящий р-код, и текст программы из него не восстанавливался, а хранился отдельно. Полное же и однозначное восстановление текста программы, с комментариями в том числе, совершенно однозначно свидетельствует о хранении именно текста, пусть и не в plain виде.
IID>То есть возможность восстановления имён переменных и комментариев отличает p-код от не p-кода ? Не соглашусь. Там прекомпиляция по полной программе была. Во-первых исчезала необходимость в лексическом разборе текста программы, каждый токен представлялся одним байтом, и исполнение сводилось к switch-case с константной сложностью (по табличке). Во-вторых все числовые значения сразу же преобразовывались в бинарный FP формат, не требуя никаких затрат в рантайме. В третьих для каждой строки сразу рассчитывалась её длина. И переход к следующей строке сводился к 16битному сложению. Неоптимальными были только переходы (GOTO, GOSUB) которые искали целевую строку пробегая по всей программе. Поэтому стоимость перехода в конец программы была выше, и все подпрограммы рекомендовалось размещать в начале.
IID>Именно поэтому компиляция бейсик-программ давала на практике не очень большой выигрыш (от десятков процентов до нескольких раз). Потому что ускорять было почти нечего. Переходы делались фиксированными (многие компиляторы обламывались на переходах с вычисляемым номером строки), выборка токенов заменялась на вызов подпрограмм, а короткие подпрограммы инлайнились. FP заменялся на целочисленные вычисления во всех случаях, жертвуя точностью. Либо на собственную реализацию FP (например в компиляторе TobosFP). Дальнейшая оптимизация была возможна только за счёт замены рутин из ROM на специализированные версии. Например PRINT переставал работать с каналами и потоками, зато значительно ускорялся.
IID>>> Что всё равно не отменяет сути.
НС>>А суть в том, что в спектрумовском бейсике хранился именно текст, а не код.
IID>Суть в том, что такая организация исключала затраты на парсер, лексер, преобразование в FP и ускоряла выполнение в разы, вплотную приближаясь к компилированному варианту.
А какое это всё имеет отношение к тому, что был ли Джобс мразью или нет?
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Здравствуйте, IID, Вы писали:
IID>>То есть возможность восстановления имён переменных и комментариев отличает p-код от не p-кода ?
НС>Нет, это просто один из признаков. Главное же отличие — что именно хранится. Если синтаксические структуры — не р-код, если семантические — он самый.
Разверни подробнее. И с примерами (реальными, а не сферическими в вакууме).
IID>>Там прекомпиляция по полной программе была.
НС>Не было ее там. Прекомпиляция и парсинг, это совсем не одно и то же. А в спектруме даже парсинга, как такового, особо и не было, кроме выражений и констант.
Парсинг токенов в 48к был сделан за счёт оригинальной схемы набора. А в 128к он обычный, текстовый. Введённая строка парсится при завершении редактирования.
НС>>>А суть в том, что в спектрумовском бейсике хранился именно текст, а не код.
IID>>Суть в том, что такая организация исключала затраты на парсер, лексер, преобразование в FP и ускоряла выполнение в разы, вплотную приближаясь к компилированному варианту.
НС>К компилированному варианту она не приближалась, да и не могло быть никакой нормальной компиляции динамического бейсика тогда.
Что значит "нормальной" ? Конечно, у компиляторов были ограничения. Кто-то не умел вычисляемый GOTO, кто-то не умел DEF FN, кто-то массивы, кто-то FP. Но под свою задачу подобрать компилятор либо немного модифицировать код не составляло труда.
НС>Ну и, возвращаясь к началу, в БК была примерно такая же схема, может чуть погибче.
В чём гибче ?
Здравствуйте, IID, Вы писали:
IID>Здравствуйте, Ночной Смотрящий, Вы писали:
НС>>Здравствуйте, IID, Вы писали:
IID>>>То есть возможность восстановления имён переменных и комментариев отличает p-код от не p-кода ?
НС>>Нет, это просто один из признаков. Главное же отличие — что именно хранится. Если синтаксические структуры — не р-код, если семантические — он самый.
IID>Разверни подробнее. И с примерами (реальными, а не сферическими в вакууме).
IID>>>Там прекомпиляция по полной программе была.
НС>>Не было ее там. Прекомпиляция и парсинг, это совсем не одно и то же. А в спектруме даже парсинга, как такового, особо и не было, кроме выражений и констант.
IID>Парсинг токенов в 48к был сделан за счёт оригинальной схемы набора. А в 128к он обычный, текстовый. Введённая строка парсится при завершении редактирования.
НС>>>>А суть в том, что в спектрумовском бейсике хранился именно текст, а не код.
IID>>>Суть в том, что такая организация исключала затраты на парсер, лексер, преобразование в FP и ускоряла выполнение в разы, вплотную приближаясь к компилированному варианту.
НС>>К компилированному варианту она не приближалась, да и не могло быть никакой нормальной компиляции динамического бейсика тогда.
IID>Что значит "нормальной" ? Конечно, у компиляторов были ограничения. Кто-то не умел вычисляемый GOTO, кто-то не умел DEF FN, кто-то массивы, кто-то FP. Но под свою задачу подобрать компилятор либо немного модифицировать код не составляло труда.
НС>>Ну и, возвращаясь к началу, в БК была примерно такая же схема, может чуть погибче. IID>В чём гибче ?
А какое это всё имеет отношение к тому, что был Джобс мразью или нет?
Здравствуйте, IID, Вы писали:
IID>Разверни подробнее. И с примерами (реальными, а не сферическими в вакууме).
Примеров я тебе тут уже приводил. Спектрумовский вариант — синтаксический. Ты же сам пишешь, что даже не AST хранится, а голые токены. VB, Python, .NET, Java — это уже разной степени подробности семантические структуры.
IID>Парсинг токенов в 48к был сделан за счёт оригинальной схемы набора.
Не всех. Выражения типа 1+2-3 таки парсились по честному.
IID> А в 128к он обычный, текстовый.
Про 128К ничего не знаю.
IID> Введённая строка парсится при завершении редактирования.
Примерно так же работал бейсик и в БК.
НС>>Ну и, возвращаясь к началу, в БК была примерно такая же схема, может чуть погибче. IID>В чём гибче ?