Ps1 bios какой выбрать
Sony PlayStation BIOS (E)(v2.0)(1995-05-10)[SCPH-1002]
Sony PlayStation BIOS (E)(v2.2)(1995-12-04)[DTLH-3002]
Sony PlayStation BIOS (E)(v3.0)(1997-01-06)[SCPH-5502 + SCPH-5552]
Sony PlayStation BIOS (E)(v4.1)(1997-12-16)[SCPH-7502 + SCPH-9002]
Sony PlayStation BIOS (J)(v1.1)(1995-01-22)[SCPH-3000]
Sony PlayStation BIOS (J)(v2.2)(1995-12-04)[SCPH-5000]
Sony PlayStation BIOS (J)(v2.2)(1995-12-04)[SCPH-5000][b]
Sony PlayStation BIOS (J)(v2.2)(1995-12-04)[SCPH-5000][h]
Sony PlayStation BIOS (J)(v3.0)(1996-09-09)[SCPH-5500]
Sony PlayStation BIOS (J)[SCPH-1000]
Sony PlayStation BIOS (U) [SCPH-5501]
Sony PlayStation BIOS (U)(v3.0)(1996-11-18)[SCPH-7003]
Sony PlayStation BIOS (U)(v4.1)(1997-12-16)[SCPH-7001 + SCPH-9001]
Sony PSone BIOS (U)(v4.5)(2000-05-25)[SCPH-101]
SCPH-1000 - The original badboy. Released in Japan on 12/3/94.
SCPH-1001 - The original (North American) badboy. Released in North America on 9/9/95. Did not feature S-Video output port like the 1000.
SCPH-1002 - The original (European) badboy. Had no S-Video like the 1001.
SCPH-3500 - Japanese revision. No longer featured S-Video output port.
SCPH-5500 - Japanese revision. CD drive mech was relocated, onboard electronics shortened by ~20 percent, seperate ports for A/V composite output were replaced by the A/V Multi Out port.
SCPH-5501 - North American version of the 5500.
SCPH-5502 - European version of the 5500.
SCPH-5903 - Special white-colored "Video CD" edition of the PS, released only in greater Asia.
SCPH-7000 - First Japanese 'Dual Shock' hardware revision. System now came with one Dual Shock (SCPH-1200) controller, and now featured a light show program called SoundScope in the CD player menu (this was actually a stripped-down version of Baby Universe).
SCPH-7500 - Japanese revision. More motherboard reductions, revised system BIOS. Sony released this as a "mod-proof" system, but was cracked pretty quickly (of course!).
SCPH-7503 - Updated Japanese 7500.
SCPH-9000 - Japanese revision. More motherboard reductions, plus total removal of Parallel I/O port to try and foil those making cheat devices and other such products that fit into the port. Last PS hardware revision series until SCPH-100 redesign.
SCPH-100 - Also known as the PS one. Unit size reduced by one-third, power supplied by external AC adapter as opposed to internal power block. Revamped BIOS interface. Original Japanese version.
Эмулятор ePSXe & FAQ (All Versions)
Download Section:
Платформа: Windows
Платформа: Linux
ePSXe v1.7.0 [English] + Zlib1.dll + Необходимые плагины + Биосы.
-------------------------------------------------
ePSXe v1.6.0 [English + Russian] + Необходимые плагины + Биосы.
Системные требования:
Минимальные:
P200 MMX
256 MB RAM
3D Video card
------------------
Рекомендуется:
PII 500
512 MB RAM
DirectX/OpenGL compatible card
Устройство эмулятора:
Автор рукаводства: Dimka
Эмулятор ePSXe является модульным, т.е. сборным. Этими модулями являются: сам ePSXe эмулирующий работу процессора PlayStation, BIOS PlayStation, MemoryCard PlayStation и плагины эмулирующие остальные части системы. Все это хранится в папке эмулятора и разложено в отдельных папках:
• папка bios - Здесь лежат BIOS'ы, из которых можно выбрать один для эмуляции.
• cheats - Папка для чит-кодов к играм.
• memcards - Лежат карты памяти, их можно создать неограниченное количество.
• plugins - Папка с плагинами.
• server - Папка с сервером, необходим для игры по сети.
• snap - Сюда будут сохраняться ваши скриншоты, которые можно сделать кнопкой F8.
• sstates - Сохранения эмулятора, не карты памяти!
Важно: Версия 1.7 требует обязательного присутствия в папке с эмулятором файла Zlib1.dll, который можно взять здесь или сразу скачать готовую сборку, по одной из ссылкок, выше по тексту.
Итак, давайте разбёремся с интерфейсом этого эмулятора. Перед Вами главное окно - разберем все его опции по порядку:
-----------------------------------------------------------------------
-----------------------------------------------------------------------
• Run CDROM - Запуск игры для PlayStation с компакт диска (берегите свой привод, и лучше пользуйтесь образами диска-ISO.).
В большинстве игр не дает хорошей скорости игры, так как скорость считывания данных маловата.
• Run ISO - Запуск игры с образа диска-ISO. т.е. сохраненный на жестком диске файл-образ диска, который можно сделать программами Clone CD, Alcohol, CDRWin.
• Run PS-EXE - Запуск исполняемого файла PSX.
• Run BIOS - Запуск BIOS PlayStation, в котором можно либо поработать с картами памяти либо с CD-проигрывателем.
• Change Disk - Смена диска, необходим для игр расположенных на нескольких дисках (например: после прохождения первого диска игра требует второй, вставьте другой диск либо выберите другой файл-образ).
• Exit - Выход
• Continue - Продолжить эмуляцию.
• Reset - Перезагрузка эмулятора.
• Save State [F1] - Сохранить игру (в любое время). Не на карту памяти! Сохранения лежат в папке "sstates". C помощью клавиши [F2] можно выбрать один из пяти предусмотренных слотов.
• Load State [F3] - Загрузить игру, все так же не с карты памяти. Причем если играть в многодисковую игру, то чтобы загрузить сохранение сделанное на n - ом диске, необходимо сначала запустить первый диск, потом загрузить сохранение и только потом выбрать нужный диск. Иначе при попытке "загрузиться" сразу с n-го диска в меню Run --> Load State [F3] Просто не будет сохранений.
• Enable Logs - Показывать консоль/текстовое окно. В нем вы сможете увидеть всё происходящее - загрузку модулей, ошибки и другую необходимую информацию - рекомендуется включить и ознакомится, если возникают ошибки.
Меню Config :
• Wizard Guide - Полная настройка эмулятора ( Рекомендуется для первой настройки эмулятора ).
• Video - Настройка видеоплагина.
• Sound - Настройка аудиоплагина.
• Cdrom - Настройка CD-плагина.
• Bios - Выбор БИОСа.
• Netplay - Настройка сетевого плагина.
• Memory Card - Выбор карт памяти.
• Game Pad - Настройка управления.
Меню Options :
• Auto load ppf files enabled - Включить автоматическую загрузку ppf файлов (Различные патчи).
• Country - Выбор региона для приставки: Лучше включить Autodetect, но иногда, придется выбирать вручную, тогда: NTSC - Япония, США; PAL - Европа
Надеюсь, с этой опцией, все понятно. Кроме непосредственной помощи здесь еще есть выбор языка (Английский или Испанский)
----------------------------------------------------------------------
Чтобы настроить эмулятор можно воспользоваться пунктом меню Config-->Wizard Guide, который поможет в полной пошаговой настройке эмулятора, а можно настроить каждую часть эмулятора по отдельности (хорошо пригодиться, когда необходимо настроить какой-либо один плагин, нетрогая остальные) все там же в Config.
-----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------
Биосы должны лежать в папке bios (С:\ePSXe1.6\bios), путь к нему нужно указать в Config-->Bios. Биосы должны имеют расширение .bin, и имеют названия, состоящие из букв "scph" и цифрового четырехзначного кода (scph 1001, scph7001, scph 7502 и многие другие). Лучше использовать либо "scph 1001", либо "scph 7502"
-----------------------------------------------------------------------------------------------------
----------------------------------------------------------------------
Для различных видов видеокарт необходимы различные плагины, так, для старых Radeon'ов и видео карт до GeForce 4 включительно - наилучшим вариантом является Pete's OpenGL Driver 1.76, его и рассмотрим:
Сразу же скажу если вам неохота или некогда мучаться с настройками видеоплагина, то вам поможет небольшой раздел Default settings, внизу окна настройки:
• Fast - обеспечит отличную скорость игры без графических изысков (настройка для "слабого" компьютера)
• Nice - обеспечит хорошее видеокачество, но требует больше ресурсов (настройка для "мощного" компьютера)
Раздел Resolutions & Colors :
• Fullscreen mode: - Полноэкранный режим , Desktop resolution : - Выберите разрешение вашего монитора.
• Window mode: - Оконный режим , Window size: - Выберите размер окна.
• Color depth - Качество цвета, лучше поставить "32 Bit".
• Keep psx aspect ratio - Соотношение длины и ширины как на PlayStation, лучше галочку не ставить.
Раздел Textures :
- o don't care - Use driver's default textures - Никаких эффектов т.к. используются первичные видеодрайвера.
- o Fast, but less colorful - Быстрая скорость, но низкое качество.
- o Nice colors, bad transparency - Хорошие качество, меньше прозрачности.
- o Best colors, more ram needed - Отличное качество, требует больше ресурсов.
- o Slightly fast with some cards - На некоторых картах позволяет увеличить скорость.
- o 2xSal - Размазанные текстуры (необходимо больше ресурсов и уменьшается скорость игры).
- o Stretched - Растянутые текстуры (картинка четче, но графика становиться менее плавной), требуется меньше ресурсов.
Раздел Framerate :
• Show FPS display on startup - Показ FPS (кадров в секунду) на дисплее и не только. Полезная опция.
• Use FPS limit - Ограничение количества кадров (замедлит слишком быструю эмуляцию на "мощных" компьютерах). Обязательно обратите вниманиена эту опцию, если эмуляция у Вас работает слишком быстро .
• Use Frame skipping - Пропускание кадров (ускорит слишком медленную эмуляцию на "слабых" компьютерах, путем пропуска кадров).
• Auto-detect FPS/Frame skipping limit - Автоматическое определение ограничения/пропуска кадров. Не всегда работает корректно, так что лучше установить вручную.
• FPS limit - Ручное ограничение количества кадров, т.е, непосредственно скорости эмуляции. Рекомендуемое значение 60 кадров, но опять же не бойтесь экспериментировать и делайте, так как вам нравиться. При слишком большой или маленькой скорости возможны проблемы со звуком .
Раздел Compatibility :
- o Emulated vram - Видеопамять эмулятора.
- o Black - Быстрая работа, но без эффектов.
- o Gfx card buffer - Использует буфер видеокарты, но может медленно работать.
- o Gfx card buffer & software - Тоже, но еще медленнее.
Раздел Misc :
• Scanlines - Черные линии как на телевизоре.
• Line mode - Выбор линий полигонов.
• Unfiltered framebuffer updates - Пари включенном сглаживании, видеоролики остаются несмазанными.
• Force 15 bit framebuffer updates - Усиление 15 битовых буферных коррекций. (Лучше выключить)
• Color dithering - Улучшение качества теней в двухмерных играх при 16 битах.
• Screen smoothing - Экранное сглаживание, замедляет эмуляцию т.к. необходимо много ресурсов.
• Screen cushion - Бесполезная функция, должна регулировать скорость экранного сглаживания
• Disable screensaver - Выключить скринсейвер. Если используете - ставьте галку.
• Special game fixes - Различные специальные функции плагина. Ставятся к каждой отдельной игре. (Очень редко)
Это была настройка плагина OpenGL 1.76 от Pete's. Но если у вас имеется одна из современных видеокарт класса GeForce FX либо новые Radeon'ы, которые используют технологию DirectX9 пиксельные шейдеры 2.0., тогда лучше использовать Pete's OpenGL2 PSX GPU Plugin, на данный момент - версии 2.09. Рассмотрим основные отличия:
- o Low - Для видеокарт с 32 Mb памяти
- o High - Для 64 Mb
- o Very high - Для 128 Mb
Настройка Audio.
Настройка звука уже не так сложна, как видео, так что здесь будет немного легче. Перед тем как приступить непосредственно к самой настройке плагина, нужно настроить встроенный аудиоплагин:
• Enable Sound - Включить звук (необходим для задействования CDPCM и XA звуков). CDPCM и ХА - форматы звука в PlayStation. Включаем.
• Enable CDDA Sound - Включить CDDA звук (в основном музыка). Включаем.
• Enable XA sound - Включить ХА звук, необходим в MDEC видеороликах. Включаем. По-умолчанию выключен!
• Enable SPU IRQ hack - Необходим в некоторых играх, экспериментируйте отдельно с каждой игрой.
Теперь разберем конкретно плагин Null2's Audio Driver 1.4, являющийся довольно несложным в освоении и одновременно дающий неплохое качество звука. Главное все правильно настроить.
Раздел Driver Configuration :
• Attributes: - Качество звука, выбирайте сами как вам нравиться.
• buffer length: - Длина буфера. Попробуйте выставить значение 50-70.
• block: - Количество блоков. При условии длины буфера 50-70, ставим 5.
• interval: - Интервал между блоками звукового потока. Определяется значениями Buffer length и Block. Поток состоит из блоков (чем больше блоков, тем чаще обновляется звуковой поток), размер блока определяется его буфером (чем меньше размер буфера, тем быстрее заканчивается блок и соответственно быстрее обновляется звуковой поток). Вобщем опять же пробуйте, пробуйте и пробуйте!
Раздел Misc :
• use reverb - Включить реверберацию (эхо)
• reverse L/R - Реверс звука (лево на право, право на лево)
• for win2k - Поддержка WinXP, Win2000
• Mute XA/VAG stream - Выключить звук
• enable VAG stream - Выключить VAG звук (речь)
• linear interpolation - Линейная интерполяция. Сглаживание перехода между блоками звука. Из-за этого иногда возникает шуршание или хрип
Настройка CD-ROM.
Прежде чем продолжить еще раз скажу, что лучше всего играть не с самого CD привода (пожалейте его и диски), а с файлов-образов (ISO), к тому же скорость игры будет намного лучше. А теперь о главном. Настройка CD плагинов довольно сложна, следует учесть и тип привода и систему и наличие драйверов. Поэтому самым простым решением является выбор встроенных плагинов ePSXe.
У эмулятора уже имеются 2 встроенных CD плагина и лучше не "заморачиваться" и использовать их:
- ePSXe CDR ASPI core 1.5.2 для Win9x.
- ePSXe CDR WNT/W2K core 1.5.2 для Win2000, WinXP
Как видно настроек немного:
• First Cdrom letter - Выберите букву вашего CD привода.
• Enable subchannel read from cdrom - Эмулятор сразу считывает данные с CD (может быть очень медленным).
• Enable subchannel cashing to disk - Сначала данные кэшируются на жесткий диск, а эмулятор уже берет все оттуда.
• Enabled subchannel caching for LG - То же, но протестированное для привода LG.
Настройка управления.
Для эмуляции джойстиков PlayStation можно применять клавиатуру, мышь (стратегии), джойстик, геймпад. Настройка кнопок не отличается особой сложностью, устанавливайте так как вам больше нравиться и как наиболее удобно для данной игры. Для того чтобы изменить кнопку просто щелкните мышкой на окошко выбранной кнопки, а затем нажмите соответствующую кнопку на клавиатуре/джойстике. Для аналоговых устройств присваивайте значение: Ось X (по горизонтали) - красная стрелка, ось Y (по вертикали) - синяя стрелка.
Окошко в правом верхнем углу определяет тип управляющего устройства:
• Digital Only - Любое цифровое устройство.
• Digital/Analog (F5) - Цифровое/аналоговое устройство (F5 - переключение между режимами).
• Digital/Analog Mouse T0 (F5) - Цифровое устройство/аналоговая мышь Т0.
• Digital/Analog Mouse T1 (F5) - Цифровое устройство/аналоговая мышь Т1.
• Digital/Gun (F5) - Цифровое устройство/пистолет.
• Digital/Mouse (F5) - Цифровое устройство/стандартная мышь.
• Disabled - Отключить джойстик (играйте на клавиатуре).
Раздел Rumble определяет параметры вибрации джойстика:
- o Constant - Двигатель постоянного тока.
- o None - Без двигателя.
- o Sine - Двигатель переменного тока.
Настройка сетевой игры.
Эмулятор ePSXe 1.6 также поддерживает сетевую игру, также как если бы вы соединили две приставки вместе! Поэтому если у вас существует подключение к Интернету или локальной сети, то вам может быть полезен этот раздел. Плагин тут всего один: CyberPad 1.4. Сам плагин кладём в папку plugins, а клиент в корневую папку эмулятора. Настрайка не требуется, главное не пытаться использовать другой клиент (работать не будет). А теперь о запуске игры (и сетевом режиме тоже).
Вот и настал самый радостный момент, думаю вас уже можно поздравить!
Итак, запуск: File--> Run CDROM (наслаждаемся!) либо Run ISO (в появившемся окне надо выбрать путь к файл-образу игры). После выполнения этих манипуляций, при условии активирования CyberPad 1.4 (Config--> Netplay--> CyberPad 1.4), появиться следующее окно:
Это окно сетевой игры, если вы не собираетесь играть по сети просто нажмите Cancel (отмена) и вперед во времена забытой молодости! Если же нет, то тогда читайте внимательно.
• Закладка All servers - Отображается список серверов (кнопка Refresh list обновляет этот список), если же ничего нет, то нажмите Enter IP.
• Закладка Recent - Список последних использовавшихся серверов.
o Кнопки:
• Connect - Соединиться с выбранным сервером.
• Refresh list - Обновить лист.
• Enter IP. - Ввести IP известного вам сервера.
Если вы хотите играть по Интернету, то знайте что не только ePSXe использует сетевой плагин от Kaillera, но его также используют куча эмуляторов других консольных систем. Так что при поиске в Интернете не ошибитесь!
Теперь про игру по локальной сети: (для игры лучше всего иметь два достаточно мощных компьютера, приблизительно равной конфигурации) прежде всего, запустите сервер для игры, на одном из компьютеров. Затем оба игрока запускают эмулятор и в появившемся окне (см. выше) жмут кнопку Enter IP. где необходимо ввести IP-адрес компьютера, на котором запущен сервер. После появиться вот это окно:
----------------------------------------------------------------------------
Тут имеется чат для координации действий между игроками, список игроков и список игр. Далее выбираете либо создать игру (Create new game) либо присоединиться к уже созданной (Join). После создания игры во вновь появившемся окне появиться второй чат, из этого же окна можно запускать игру кнопкой Start game! Сетевая игра очень сложный элемент и наврятли у вас получиться что-то с первого раза. Тут большую роль играет синхронность эмуляции машин. При сетевой игре необходимо все настройки эмуляторов и делать одинаковыми и минимальными, делающими минимальными затраты ресурсов. В общем, тут большой простор для творчества. Пробуйте и у вас получиться!
-----------------------------------------------------------------------------------------------------
На этом курс молодого бойца закончен. Поздравляю вас с успешным обучением и желаю удачи! Приятного времяпровождения за старыми добрыми играми Sony Play Station.
Эти настройки подойдут не для всех компьютеров и игр. Поэтому могут возникнуть вопросы.
Все вопросы относительно эмуляции и запуска игр на эмуляторах, задаются в специальной теме, а не в топе с игрой! Просьбы "о запуске\незапуске" в теме с игрой, будут по-меньшей мере игнорироваться.
У меня есть диски для ps1,а что нужно нажать чтобы играть на пк спомощью этой программы. Помогите!!
Дисков полно,программа есть. вот только что нужно нажимать в этой программе я непонял. 10 балов за хороший ответ.
Во-первых, настрой видео и звук. Поищи в гугле настройки для программы. Но как правило он уже настроен. Если так, то вставляешь диск и нажимаешь Ран СД
1: Вставь диск
2: Включи ePSXe
3:
-=НАСТРОЙКА BIOS=-
Запускаем эмулятор. В меню пользователя (вверху) выбираем "Config". Далее "Bios". В появившемся окне
указываем путь к биосу "Sony PSone BIOS (U)(v4.5)(2000-05-25)[SCPH-101].bin", который лежит в папке
bios эмулятора.
-=НАСТРОЙКА ВИДЕО=-
Запускаем эмулятор. В меню пользователя (вверху) выбираем "Config". Далее "Video". В появившемся окне
выбираем Pete's D3D Driver 1.77. Жмём "Configure". В следующем окне щёлкаем на кнопке "Nice" в нижнем
левом углу. Далее находим меню "Hi-Res Textures" и выбираем в нём "1: 2xSal (much vram needed)". Далее в
этом же окне в верхнем левом углу жмём "Select device" и указываем видюху (можно не указывать) . Не
забываем настроить разрешение (Desktop resolution). Лучше 1152x864. Советую поставить полноэкранный
режим (кнопка "Fullscreen mode" рядом с разрешением) . Также ставим Color depth: 32 bit. Всё, закрываем
окна, нажимая "ОK".
-=НАСТРОЙКА АУДИО=-
Здесь проще. Выбираем "Config", далее "Sound". В появившемся окне ставим ePSXe SPU core 1.7.0. Это
стандартный плагин, не нуждающийся в настройках, но качество звука далеко от совершенства. Можете
поэкспериментировать, но у остальных плагинов проблемы со совместимостью. Тут всё. Жмём "ОК".
-=НАСТРОЙКА CDROM=-
Выбираем "Config", далее "Cdrom". В появившемся окне выбираем "SaPu's CD-ROM Plugin 1.0".
Жмём "Configure". В появившемся окне должно быть так:
Interface Type: Autodetect.
Read Mode: Autodetect.
Caching Level: 3 - Enabled.
Cache Size: 8 - Medium. Должна стоять галочка напротив Track ISO9660 File.
Всё, жмём "ОК" и наслаждаемся игрой.
512 KB ROM содержит стартовый загрузчик BIOS, копию ядра (kernel) PlayStation OS, а также "оболочку" (shell), которая открывается, если в консоль не вставлен игровой диск и содержит менеджер карт памяти и CD-проигрыватель.
Типичный ROM BIOS выглядит примерно вот так :
- У BIOS PU-7 и старых PU-8 микросхема 40 выводов.
- Начиная с новых версий PU-8 (и далее) микросхема 32 вывода (в том числе и у PSOne)
Внутри скорее всего ROM с ионной имплантацией по маске.
Contents
Тайминги
Версии BIOS
Вот это сложный вопрос, потому что версии BIOS во-первых отличаются от региона, во вторых они отличаются между моделями материнских плат. И даже внутри одной модели материнки могут быть разные версии BIOS, в зависимости от ревизии материнской платы одной модели.
Эталонной версией BIOS почти все эмуляторы считают SCPH1001.BIN. Этот BIOS был подробно дизассемблирован и считается "стабильным" для работы в эмуляторах.
Устройство образа BIOS
Образ BIOS состоит из трёх частей. На примере SCPH-1001 :
- 0x0 : Boot. Непосредственно часть BIOS, которая производит загрузку ядра и содержит большую часть системных вызовов таблицы A0.
- 0x10000 : Kernel. Образ ядра, который копируется в 0x500. Содержит также системные вызовы таблиц B0 и C0.
- 0x18000 : Shell. Копируется в 0x80030000.
В самом конце Shell находятся какая-то структура со строками о версии BIOS. Где используется пока не обнаружено.
Программа начальной загрузки (RESET)
Исполнение начинается с адреса 0xBFC00000
- Инициализирует недокументированные аппаратные регистры CPU (тайминг и пр.)
- Очищает память и регистры CPU
- Если в PSX присутствует устройство PIO - выполняет его программу инициализации (init)
- Переходит на загрузку ядра (процедура Main)
Some reversing of SCPH-1001 BIOS :
Bootrom Main
Процедура Main работает следующим образом :
- В память копируется резидентный образ ядра и запускается его процедура инициализации
- Устанавливаются Kernel Traps (обработчики исключений, прерываний и системных вызовов)
- Устанавливаются драйвера устройств (TTY, CDROM и MemCard)
- Инциализируется исполнительная система ядра (Kernel Executive) : Обработчики событий, потоки, события и системные счетчики
- Распаковывается и запускается SHELL, которая решает - запустить меню или выйти назад в ядро для загрузки диска
- Если SHELL выходит, то Main продолжает загрузку диска
- Запускается процедура main устройства PIO (PIO Shell), которое либо перехватывает управление, либо возвращает управление назад в Main.
- Считывается конфигурация SYSTEM.CNF и ядро производит реинциализацию системных таблиц в соответствии с настройками
- Загружается исполняемый файл
- Исполняемый файл запускается на исполнение
Kernel (PlayStation OS)
Ядро PS OS резидентно находится в памяти. Доступ к процедурам ядра производится через специальные таблицы (которые находятся по адресам 0xA0, 0xB0, 0xC0).
Второй способ вызова некоторых механизмов ядра - это инструкция Syscall (но набор её функций ограничен, по сути используется только для EnterCriticalSection / ExitCriticalSection)
Также приложениям доступна специальная "Таблица Таблиц" ядра (ToT), через которую программа может получить различные системные описатели и пр.
Выполнение пользовательских программ происходит в режиме CPU Kernel Mode, поскольку одновременно может быть запущен только один "процесс" (исполняемый файл игры).
Kernel memory map
SCPH-1001 Kernel map:
- 0x500 : Startup code and system tables (Startup.asm)
- 0xC80 : Exception handling (Exception.asm)
- 0x1030 : Memory manager (Memory.c)
- 0x1420 : Interrupt queue control (Int.c)
- 0x1508 : Root counters (RCnt.c)
- 0x1794 : Events (Event.c)
- 0x1F88 : Threads (Thread.c)
- 0x27C0 : Device drivers (IO Subsystem)
- 0x43D0 : PAD driver
- 0x47C0 : CARD driver
- 0x609C : Another PAD stuff (PAD_init and PAD_dr)
- 0x6A50 : Syscall stubs
- 0x6C60 : Various pre-initialzed data and strings (.sdata)
- 0x7460 : KernelData struct (zeroed by startup code)
- 0xE000 : Kernel Heap (0x2000 bytes)
Kernel Startup
Kernel Exception handling
Shell
Оболочка BIOS - это специальным образом созданный исполняемый файл формата PS-X EXE, который находится внутри ROM (без заголовка)
Программа начальной загрузки (процедура Main) загружает его в RAM перед запуском.
Оболочка запускается и перехватывает управление, если в привод не вставлен игровой диск. Иначе управление передаётся назад в ядро для загрузки EXE с диска.
Код Shell содержит много библиотечных вызовов, т.е. он был собран с помощью PsyQ.
Читайте также: