- Simplified OSD: buttons for video modes, SELECT for launch method, PAD for X and Y-axis offset and START to launch - In order to avoid gsKit issues, now GSM only is enabled only after selecting video mode, launch method and pressing START - Optimized C and ASM source code, many comments were rewritten - Fixed the access trap mask method to trap GS registers for all kernel segments - Implemented x-axis and y-axis offset inside core for better fine tuning on special cases - Always enabled: Automatic adaptation, DISPLAYx fix, SMODE2 fix and SYNCV fix - Main routines names changed from ModdedSetGsCrt to Hook_SetGsCrt and from DisplayHandler to GSHandler - Improved compatibility: Re-enable GSHandler whenever Hook_SetGsCrt is called - Other improvements/adjustment I can't remember for now
- Modified the access trap mask to trap GS registers for all kernel segments - Modified DisplayHandler to use kseg1 addresses for writing GS registers
На www.psx-scene.com всем известный dlanor (один из авторов uLE) вместе с doctorxyz взялись за создание хоумбрю версии Xploder HDTV Player. Как известно оригинальный HDTV Player абсолютно не совместим с HDLoader, так как использует одно и тоже адресное пространство для своих irx библиотек. То есть пользователи HDLoader(я один из них) к сожалению не могли использовать его для загрузки игр с винта. А вещь это крайне полезная, потому что очень много игр могут работать в прогрессиве(хотя изначально в самих играх этой поддержки нет) и выдавать разрешения вплоть до 1080i(это очень хорошо для владельцев LCD/Plasma TV). Причем GSM имеет огромное кол-во настроек по масштабу и сдвигу изображения в отличии от Xploder HDTV Player.
Эта программа, я думаю будет интересна владельцем PS2 с компонентным видео-подключением и TV с прогрессивной разверткой или LCD/Plasma TV. В будущем я попытаюсь(если время будет) сделать нормальный русский мануал. Лично для меня эта программа очень интересна, наверно самая интересная из того, что еще делают для PS2. GSM полностью совместим с FreeMCBoot, так как имеет функцию выхода в Browser PS2.
Немного теории
Code
- DX and DY control the screen positioning offset in physical units (not pixels) - MAGH and MAGV define the relationship between physical units and pixels - DW and [B]DH/[B] define the size of the visible screen sections in physical units (not pixels) - The physical units are the VCK clock for horizontal axis and raster lines for the vertical axis
Code
Diagram displaying the relationship among DISPLAY1/DISPLAY 2 GS Registers fields DX, DY, DW, DH, MAGH and MAGV "Those six values are the component bit fields that together comprise the contents of a DISPLAYx register. Those are two of the main registers we patch to achieve proper scaling and centering of enforced GSM vmodes. Into GSM, MAGH and MAGV are never directly controlled by the user, but are automatically adjusted for best possible rendering of a 'requested' vmode (requested by game or other software) into the physical vmode enforced by GSM (as specified by the user in the GUI). DW and DH define the width and height of the physical vmode, with the units being HLines for the vertical axis and VCK clock periods for the horizontal axis. This relates to pixels by the following equations: Width_in_pixels = (DW+1)/(MAGH+1); Height_in_pixels = (DH+1)/(MAGV+1); DX and DY define the physical offset of the top left screen corner, using similar units as DW and DH. DX,DY are primarily used for screen centering, but due to the automatic adjustments of GSM the relationship between enforced and requested DW, DH pairs also has a very strong influence on the effective borders, though their influence is always symmetrical around the screen center."
!!!В прикреплении, смотрите файл GSMFAQ.rtf с ответами на часто задаваемые вопросы(пока на английском)!!! Там же в прикреплениях перевод данного документа на русский язык нашим пользователем efokin. Название документа - 1734965.pdf. RESPECT за работу!
Не совсем. Он даже не делает апскейл в том что я вижу на деле в force pal - он тупо кажет 480 по центру. Ну ясное дело что реально бы хорошо унифицировать работу с фреймбуффером и делать не апскейл, а форс видеорежима с обработкой потом резидентом фреймбуфферных операций.
Dr_Quake, Я сильно не проверял конечно как работает преобоазование PAL/NTSC, но вот выдержка от автора(dlanor): "While GSM can already be used as a PAL/NTSC enforcer, this does not work correctly for all games (this applies to all recent GSM versions). Some games, like Disgaea, become strangely magnified if GSM is set to either PAL or NTSC, in a way that I have no explanation for. This happens even when the enforced mode is the same as the one the game is assumed to use (ie: PAL for the Eu version of Disgaea)"
Dr_Quake, Ясно. Если интересно почитай ветку про GSM, может что интересное еще для себя найдешь. Dlanor умеет лить воду(шучу, у него все по делу)
Play games, not consoles
Обновление GSM 0.20. Второй соавтор проги - doctorxyz попытался решить главную проблему этой софтины с VSYNC. Именно из-за этого многие игры виснут при попытке запустить игру в "неродном" для нее видеорежиме. Но пару новых функций он в нее все-таки добавил. Теперь в GSM можно "на лету" менять аспект экрана(4:3/fullscreen/16:9) и режим вывода(rgb_scart/component)
PS Забыл добавить, что проблему с VSync он так и не решил)))
Обновление GSM 0.21 Исправлены баги с регистром SYNCV+SMODE2 для большей совместимости в VGA режиме.Больше игр стало запускаться в прогрессивном режиме. Исправлены проблемы с неправильным увеличением изображения при использовании проги в режиме PAL-NTSC переключателя. Теперь основное меню не появится пока вы нажмете какую-нибудь кнопку на паде(не забудьте об этом).
Play games, not consoles
dlanor с присущей ему шведской педантичностью продолжает шлифовать свою прогу. Уже первый автор идеи GSM doctorxyz задвинут на второй план, а dlanor выложил обновление - GSM 0.22. Список изменений большой, переводить весь новый функционал выше моих сил, привожу только текст автора: GSModeSelector v0.22 (2009.10.03) by doctorxyz and dlanor -Modified access trap methods to allow for more registers -Implemented separate access trap handling for SMODE2 and SYNCV registers -Implemented opcode recognition table for trap cause analysis -Added 'Source' variables for SMODE2 and SYNCV trapped register values -Modified asm methods again to further simplify maintenance and updates -Added makefile dependencies for macro and asm header files -Eliminated all redundant use of quadwords for doubleword variables -Added CNF file loading and saving (GSM.CNF loads automatically at launch) -Added proper PAL/NTSC init using rom0:ROMVER (works for slim models too) -Added 2 separate fixes for games & OSDSYS using interlace plus FFMD=1 (one for interlaced forced vmodes and another for non-interlaced) Due to these fixes the OSDSYS/FMCB menu now works in all forced video modes -Implemented an array of eight user-definable vmodes, savable to CNF file -Added GUI menu commands to manipulate user-definable vmodes -Added GUI menu command to save CNF file
Из нововведений хочу отметить, что прога создает на карточке памяти mc0:(либо mc1:, в зависимости от той которая у вас вставлена) в каталоге BOOT конфигурационный файл GSM.CNF, который служит для хранения ваших пресетов видеорежимов. Итак сейчас можно имет 8 ячеек для сохранения пресетов(установок) в таблице. Вот как реализована навигация по ним: R2 + < - Переход по таблице влево R2 +> - Переход по таблице вправо R 2+ ^ - Сохраняет значения в таблице R2 + V - Загружает значение из таблицы L2+R2 - сохранение всех 8 настроек в файл GSM.CNF на карточку
Не забывайте сохранять, так как прога пока не имеет функцию автозаписи!
Play games, not consoles
Сообщение отредактировал dimm - Воскресенье, 04.10.09, 01:36
Плотников(авт.Sms)как я понял будет помагать авторам этого проекта в развитии Gsm,
pstwo_scph77008pal&modbo760[v1.93] ps3_cech2508a[fw3.73]_ps eye_move motion&move navigation_wi-fi[huawei_e5830] bravia_klv32nx500_hama full speed hdmi 1.5m
Очередное обновление сабжа - GSM v0.23 лог изменений в оригинале: -Implemented branch delay slot handling for GS access trap -Added exit command for Dev1 boot (in addition to HDL and PS2Browser/FMCB) -Tweaked some vmode values and some patching methods Короче улучшена совместимость с большим кол-вом игр. Play games, not consoles