Автор Тема: Sega Master System и кривой скроллинг в играх  (Прочитано 3513 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Psycho-A

  • Пользователь
  • Сообщений: 384
    • Просмотр профиля
Казалось бы, приставка графически совершеннее NES, но почему же во многих играх-платформерах настолько кастрированный скроллинг?
Взять ту же "Tom and Jerry - The Movie", "Bonkers Wax Up!" и прочие - если быстро двигаешься, то невооруженным глазом видно, что частота прокрутки идёт максимум с 15-20 FPS, при долгой игре от этих рывков начинают болеть глаза. В каких-то играх видел даже меньший FPS. Или это объясняется лишь кривостью эмулятора? Играю на Kega Fusion, другие не пробовал.
« Последнее редактирование: 27 Февраль 2016, 23:47:49 от Psycho-A »

Оффлайн MetalliC

  • Технический консультант
  • Сообщений: 9364
  • Пол: Мужской
  • Demul team / MAME developer
    • Просмотр профиля
Sega Master System и кривой скроллинг в играх
« Ответ #1 : 27 Февраль 2016, 22:22:25 »
может из-за процессора ? в SMS он почти вдвое медленнее NESовского

Оффлайн Psycho-A

  • Пользователь
  • Сообщений: 384
    • Просмотр профиля
Sega Master System и кривой скроллинг в играх
« Ответ #2 : 27 Февраль 2016, 23:46:53 »
может из-за процессора ? в SMS он почти вдвое медленнее NESовского
Тогда почему же на половине других игр всё в порядке? Тот же Sonic, Asterix Deep Duck Trouble графически весьма неплохи, а скроллинг в них плавный как по горизонтали, так и по вертикали.
Кстати, вроде бы процессор наоборот мощнее у SMS - у NES он 1,79 МГц, а у SMS - 3,54. Или речь про видео?

Оффлайн MetalliC

  • Технический консультант
  • Сообщений: 9364
  • Пол: Мужской
  • Demul team / MAME developer
    • Просмотр профиля
Sega Master System и кривой скроллинг в играх
« Ответ #3 : 28 Февраль 2016, 07:17:52 »
Кстати, вроде бы процессор наоборот мощнее у SMS - у NES он 1,79 МГц, а у SMS - 3,54. Или речь про видео?
нет, речь именно о центральном процессоре. дело в том, что при одинаковых частотах MOS6502 работает в среднем в 3(три) раза быстрее чем Z80.
так что с учетом разницы частот процессоров NES и SMS - первый будет быстрее в полтора раза (но не в два, то я немного обсчитался).

PS: кстати схожая картина наблюдается и в случае процов SNES и SMD.

Оффлайн ZeroUseless

  • Пользователь
  • Сообщений: 1143
  • Пол: Мужской
  • МЕМ
    • Просмотр профиля
Sega Master System и кривой скроллинг в играх
« Ответ #4 : 28 Февраль 2016, 16:57:57 »
Цитата
может из-за процессора ? в SMS он почти вдвое медленнее NESовского
По скорости исполнения инструкций они равны.
Цитата
PS: кстати схожая картина наблюдается и в случае процов SNES и SMD.
По скорости исполнения инструкций они равны.

Оффлайн MetalliC

  • Технический консультант
  • Сообщений: 9364
  • Пол: Мужской
  • Demul team / MAME developer
    • Просмотр профиля
Sega Master System и кривой скроллинг в играх
« Ответ #5 : 28 Февраль 2016, 17:39:57 »
каких инструкций ?

допустим установка константы в аккумулятор -
Z80: LD A, число - 7 тактов
6502: LDA #$число - 2 такта

чтение байта по абсолютному адресу в аккумулятор:
Z80: LD A,(адрес) - 13 тактов
6502: LDA $адрес - 4 такта

сам посчитаешь разницу ? и она где-то такая же в большинстве "ходовых" команд.
Z80 имхо выгодно отличается лишь большИм количеством регистров.

если есть желание продолжать MOS vs Zilog - лучше создать отдельную тему.

Оффлайн ZeroUseless

  • Пользователь
  • Сообщений: 1143
  • Пол: Мужской
  • МЕМ
    • Просмотр профиля
Sega Master System и кривой скроллинг в играх
« Ответ #6 : 28 Февраль 2016, 17:45:36 »
MetalliC, безразличие и достигается (и то, лишь "в целом", не думая о частных случаях) конской частотой ЦП.

Оффлайн MetalliC

  • Технический консультант
  • Сообщений: 9364
  • Пол: Мужской
  • Demul team / MAME developer
    • Просмотр профиля
Sega Master System и кривой скроллинг в играх
« Ответ #7 : 28 Февраль 2016, 17:56:39 »
эмм, судя по характеру фразы безразличие достигается какими-то веществами :)

частота-то тактовая, и за сколько тактов процессор выполняет те или иные команды - ключевой фактор, равно важный как и конская или козья частота ))
и чтоб приведенные для примера команды, как ты говоришь были "По скорости исполнения инструкций они равны." надо чтоб Z80 был с в ТРИ раза большей частотой, даже чуть больше


Добавлено позже:
короче будь добр обоснуй

Оффлайн nonamezerox

  • Пользователь
  • Сообщений: 322
    • Просмотр профиля
Sega Master System и кривой скроллинг в играх
« Ответ #8 : 28 Февраль 2016, 18:13:51 »
Вообще забавно, конечно, по идее должно быть наоборот, ведь моська безрегистровая и все время лазает в оперативу а зет с регистрами и за каждым операндом в оперативу ему лазить не нужно. Неужели zero page так решает.

Оффлайн MetalliC

  • Технический консультант
  • Сообщений: 9364
  • Пол: Мужской
  • Demul team / MAME developer
    • Просмотр профиля
Sega Master System и кривой скроллинг в играх
« Ответ #9 : 28 Февраль 2016, 18:23:01 »
во, хоть кто-то понимающий в вопросе :)

простой процессор - быстрые команды, и быстрый доступ к памяти.
у зилога 8бит операции регистр-регистр - 4 такта (и это минимальное время исполнения команд, меньше 4 не бывает)
у 6502 регистров нет, зато операция с константой - 2 такта, с памятью из zero-page - 3 такта, то есть регистр-память у 6502 быстрее чем регистр-регистр у зилога.

Оффлайн nonamezerox

  • Пользователь
  • Сообщений: 322
    • Просмотр профиля
Sega Master System и кривой скроллинг в играх
« Ответ #10 : 28 Февраль 2016, 18:32:01 »
Ну тут вообще странно, хотя если учесть что зилог суть дополненный клон 8080, который первый более-менее функциональный CPU вообще то вполне похоже на правду. Но то что на такт больше все равно странно - чисто по схемологике дешифрация 3 бит адреса операнда(который тем более вне адресного пространства) против дешифрации 16 бит адреса и последующей дешифрации 8 бит с доступом к sram. Хммм чота падазрительно(ТМ).

Ну и да.  SMS - из деталей с ближайшего радиомагазина, а NES-фулл кастомЪ Железо. :lol: Вообще конечно забавно, что именно неску клонировали больше, ведь в SMS кроме допиленного тексасовского видеочипа все остальное реально можно было на радиорынке готовое купить.

Добавлено позже:
А и да, у SMS оператива и видеопамять драмовская (вернее XRAM который суть DRAM с набортным контроллером), а у NES SRAM
« Последнее редактирование: 28 Февраль 2016, 18:42:18 от nonamezerox »

Оффлайн ZeroUseless

  • Пользователь
  • Сообщений: 1143
  • Пол: Мужской
  • МЕМ
    • Просмотр профиля
Sega Master System и кривой скроллинг в играх
« Ответ #11 : 28 Февраль 2016, 18:44:08 »
MetalliC, nonamezerox, что вы оба несёте? 6502 - безрегистровый процессор, конгениально! А, то есть числа, над которыми проводятся вычислительные операции у 6502, значит, сидят в zero page, а не в регистре-аккумуляторе A или индексных регистрах X, Y? Поговорите мне тут про вещества.
Цитата
допустим установка константы в аккумулятор -
Z80: LD A, число - 7 тактов
6502: LDA #$число - 2 такта

чтение байта по абсолютному адресу в аккумулятор:
Z80: LD A,(адрес) - 13 тактов
6502: LDA $адрес - 4 такта
В сферических конях-то, типа этого, может быть, и выше, но у Z80 большой набор регистров и спец. команд, связанных с перемещением данных и нативная поддержка вычислительных операции над 16-битными числами и 16-битный же стек ещё как решают. И очень просто -- процессору просто меньше кода приходится выполнять.

Оффлайн MetalliC

  • Технический консультант
  • Сообщений: 9364
  • Пол: Мужской
  • Demul team / MAME developer
    • Просмотр профиля
Sega Master System и кривой скроллинг в играх
« Ответ #12 : 28 Февраль 2016, 18:47:00 »
толку от этих дополнений мало - всеж эти дополнительные префиксные команды тормозные, я на практике разве что LDI использовал, кучку подряд. ну и второй набор регистров, при стековых пересылках в основном, что еще тот изврат )

на счет клонов SMS - их было достаточно в регионах, где эта система была более популярна чем НЕС, в латинской Америке например, там их TecToy штамповали типа как тут для Стиплера.

Добавлено позже:
В сферических конях-то, типа этого, может быть, и выше, но у Z80 большой набор регистров и спец. команд, связанных с перемещением данных
хаха, это ты тут скорее теоретик со сферическими конями.
я на практике прилично кода писал под Z80, интрошки всякие, эффекты итп и какбэ на практике знаю что эти все спец комманды - нереальный тормоз. ВСЕГДА когда только можно все используют "обычные" комманды, из набора i8080, потому что они быстрее.

Оффлайн nonamezerox

  • Пользователь
  • Сообщений: 322
    • Просмотр профиля
Sega Master System и кривой скроллинг в играх
« Ответ #13 : 28 Февраль 2016, 18:54:51 »
Цитата
нативная поддержка вычислительных операции над 16-битными числами и 16-битный же стек ещё как решают. И очень просто -- процессору просто меньше кода приходится выполнять.

Кода меньше, зато пайплайн длиннее и тактов больше, потому что кроме кода еще и исполнительный механизм имеется, который этод кот выполняет. А там всякие нехорошие вещи вроде счетчиков, мультиплексоров, шифраторов-дешифраторов происходят, которые чем сложнее тем большей разбивки на такты требуют.

Оффлайн MetalliC

  • Технический консультант
  • Сообщений: 9364
  • Пол: Мужской
  • Demul team / MAME developer
    • Просмотр профиля
Sega Master System и кривой скроллинг в играх
« Ответ #14 : 28 Февраль 2016, 19:00:52 »
абсолютно верно.
и как показала история это всё CISC-овое оказалось тупиковым направлением развития.
где эти все М68К или настоящие/нативные х86 ? а нету.
остались лишь нынешние i686 с RISC ядром внутри. или просто RISC-и.

Оффлайн nonamezerox

  • Пользователь
  • Сообщений: 322
    • Просмотр профиля
Sega Master System и кривой скроллинг в играх
« Ответ #15 : 28 Февраль 2016, 19:05:22 »
абсолютно верно.
и как показала история это всё CISC-овое оказалось тупиковым направлением развития.
где эти все М68К или нестоящие/нативные х86 ? а нету.
лишь нынешние i686 с RISC ядром внутри.

Ну, по факту нет, победил не RISC, а Le Priborchique™ :D. А настоящие RISC  интел вышеб с рынка один  за одним. Да и те которые RISC которые еще живые (вроде ARM) по факту тоже начали использовать Le Priborchique™ и обрастать кучей команд.

Все же risc/cisc оно про ISA, а не про microarchitecture, а по этому критерию CISC в лице x86 таки победил всех как минимум на "большом" рынке именно за счет поддержки legacy и оттачивания той самой microarchitecture, пока другие суперскалярностью мерялись. А то и первый Arm2 таки не честный RISC, а тоже с микрокодом внутри, есличо.
« Последнее редактирование: 28 Февраль 2016, 19:18:58 от nonamezerox »

Оффлайн Psycho-A

  • Пользователь
  • Сообщений: 384
    • Просмотр профиля
Sega Master System и кривой скроллинг в играх
« Ответ #16 : 28 Февраль 2016, 20:20:01 »
Во какая дискуссия-то развернулась))
Так скажите же кто-то из присутствующих, по-простому, почему же всё-таки некоторые игры по графике приближались к мегадрайвовским и ухитрялись не тормозить, а некоторые, с графикой хуже, дергались как припадочные?) Не увидел особых "за" и "против" - у обоих процессоров есть свои преимущества. Криворукость программистов, что не смогли использовать возможности процессора в полную силу (как это было в N64)?