Board.KolibriOS.org
http://board.kolibrios.org/

Порт FCE Ultra - NES (Dendy)
http://board.kolibrios.org/viewtopic.php?f=43&t=1132
Страница 3 из 6

Автор:  Asper [ Пн сен 08, 2008 12:48 am ]
Заголовок сообщения:  Re: Порт FCE Ultra

ALLiGaToR
Знаю, что старенькая, но не всё сразу :wink: . С портированием этой версии было легче разобраться.

Leency
Может работать ещё лучше :!:

Автор:  hidnplayr [ Пн сен 08, 2008 6:46 pm ]
Заголовок сообщения:  Re: Порт FCE Ultra

The files are mirrored here: http://ftp.kolibrios.org/pub/ports/asper/

Автор:  Asper [ Пт окт 24, 2008 4:18 pm ]
Заголовок сообщения:  Re: Порт FCE Ultra

Новая версия порта 0.2.

-работа с сис. функцией 70 | - working with sys. function 70
-создание сохранений | - make saves
-загрузка сохранений | - load saves
-создание скриншотов | - make screenshots
-добавлены клавиши Турбо A и Турбо B | - Turbo A and Turbo B keys were added
-работает только в ОС Kolibri из-за | - work in OS Kolibri only because of
использования сис. функции 70 | using sys. function 70

Ссылка:
http://narod.ru/disk/3381042000/FCEU_v0.2.7z.html

Автор:  Leency [ Пт ноя 14, 2008 5:48 am ]
Заголовок сообщения:  Re: Порт FCE Ultra

Посмотрел исходники, в "nest.c" заголовок выводится строкой
__menuet__write_text(3,3,0xFFFFFF,Title,strlen(Title));

её лучше заметить на... допустим:
__kolibri__draw_title(Title);

которая на С-- выглядела б примерно так:
void __kolibri__draw_title(dword ECX)
{
EAX = 71;
EBX = 1;
$int 0x40;
}

Тогда заголовок будет выводится всегда посередине вне зависимости от ширины скина, и будет цвета скина.

Автор:  s1n [ Пт ноя 14, 2008 8:43 am ]
Заголовок сообщения:  Re: Порт FCE Ultra

а обновленные сорсы будут???

Автор:  Asper [ Пт ноя 14, 2008 4:32 pm ]
Заголовок сообщения:  Re: Порт FCE Ultra

Цитата:
Посмотрел исходники, в "nest.c" заголовок выводится строкой
__menuet__write_text(3,3,0xFFFFFF,Title,strlen(Title));

её лучше заметить на... допустим:
__kolibri__draw_title(Title);

Спасибо за совет, я им воспользуюсь.

Цитата:
а обновленные сорсы будут???

Пока что нет смысла, едиственное изменение в коде - это добавление Turbo клавиш, все остальные изменения связаны с перекомпиляцией с использованием библиотеки libc, работающей с файлами на основе сис. функции 70.

Автор:  r0manich [ Вт дек 02, 2008 7:30 am ]
Заголовок сообщения:  Re: Порт FCE Ultra

Привет всем! :)

По теме скажу - "Good Job" :wink:

Параллельно приглашаю взглянуть сюда:
http://gamebox.uraldev.ru/forum/viewtopic.php?f=5&t=8
Тоже взял за основу этот эмулятор.

Прошу заметить, что в игре Battle Toads & Double Dragon есть неточность в эмуляции (ниже рисунок).
Неточность заключается в отсутствии текста.

А также НЧ-шум звучит немного не так, по сравнению с FCEUX,FCEUMM и им подобным

Кто нибудь пофиксел?

Вложения:
Комментарий к файлу: ГлючОк
1.gif
1.gif [ 5.05 КБ | 4696 просмотров ]

Автор:  Asper [ Пт дек 05, 2008 6:21 pm ]
Заголовок сообщения:  Re: Порт FCE Ultra

Сходил по ссылке, прикольно, молодец. Думаю, что твоя помощь как программиста не была бы лишней :) .
FCEUX планируется портировать в будущем (как только заставлю работать gpp или попытаюсь закомпилить его gcc), пока что на это нет времени.

В архитектуре микропроцессора 6502 и его системе команд не разбираюсь, поэтому насчёт "пофиксить" это не ко мне. Думаю после портирования FCEUX вопрос снимется сам собой.

А так если кто-то интересуется программированием NES:
http://tv-games.ru/modules.php?name=Files&go=show&lid=681

Автор:  s1n [ Чт дек 11, 2008 10:40 am ]
Заголовок сообщения:  Re: Порт FCE Ultra

тут ты скидывал FCEU_v0.1a_src.7z...
что нужно чтобы собрать его?
и если не сложно... добавь либо сюда... а в идеале на svn исходники... охото покопаться...

Автор:  Asper [ Сб дек 13, 2008 11:51 am ]
Заголовок сообщения:  Re: Порт FCE Ultra

Начнем по порядку:

1. Скачать DOS-версию пакета разработки DJGPP (официальный сайт http://www.delorie.com)
распаковать архивы (очень рекомендую в папку C:/DJGPP).
DJGPP содержит нужные нам версии gcc, ld, make и т.д.

2. Создаешь переменную среды DJGPP со значением равным полному пути к файлу djgpp.env
(у меня это C:/DJGPP/djgpp.env)

3. Скачать пакет menuetlibc, который содержит библиотеки для работы с ОС Колибри
(можно найти на сайте diamond'а). Если не хочешь собирать библиотеки
вручную очень рекомендую скачать уже собранный мной вариант
http://narod.ru/disk/4358234000/menuetos.7z.html
(размер 1 065 827 байт). Там я закинул библиотеки Ярека
в папку lib diamond'а (libc остался diamond'а), пришлось немного
поколдовать с crt0, некоторыми makefile и ещё кое-где для сборки.

Распаковываешь архив куда-нибудь.

4. Заходишь в папку menuetos из пункта 2. Копируешь полный путь из строки адреса
(у меня например это D:/OS/menuetos).
Создаешь переменную среды MENUETDEV и присваиваешь ей значение
скопированного пути из строки адреса.

5. К переменной среды Path добавляешь пути к папкам menuetos/linuxtools (у меня D:\OS\menuetos\linuxtools;),
menuetos/include (у меня D:\OS\menuetos\include;) ,
DJGPP/bin (у меня C:/DJGPP/bin;).

6. Скачиваешь и распаковываешь FCEU_v0.1a_src
(hidnplayr залил исходники FCEU на ftp, можно скачать оттуда, если не хочешь с http://narod.ru/disk/2463093000/FCEU%20v0.1a%20src.rar.html).

7. Для компиляции сначала жмешь MKbase.bat (он скомпилирует базовый код FCEU),
затем жмешь MK.bat (он скомпилирует код относящийся к ОС Колибри
и залинкует все полученные *.o файлы в результате чего и получится
исполняемый файл fce).

Примечание:
В WinXP переменную среды можно создать так:
a. Клик правой кнопкой по значку "Мой компьютер"
b. Пункт меню "Свойства"
c. Вкладка "Дополнительно"
d. Кнопка "Переменные среды"
e. На фрейме "Системные переменные" кнопка "Создать"
f. После создание переменной не забыть нажать кнопки "OK"
в окнах "Переменные среды" и "Свойства системы"

Автор:  s1n [ Сб дек 13, 2008 12:15 pm ]
Заголовок сообщения:  Re: Порт FCE Ultra

http://www.delorie.com вроде помер.. =(.... но все равно огромное спасибо за разьяснение.. =)..
з.ы.1. нашел зеркало... ftp.fh-koblenz.de там в Compile Tools....
ээх... куча файлов.. куча папок.. не понятно что нужно.. =)... буду качать по чуть чуть и выяснять какие пакеты нужны.. =)
з.ы.2. скачал пакеты.... у тебя в исходниках есть *.o файлы.. с ними fce собирается без проблем с помощью MK.bat.... но стоит их грохнуть и попытаться собрать через MKBase.bat... то почему то вываливаться ошибки...
например:
Код:
video.c:65: error: expected ')' before 'PSS'

эээх... жалко что не очень я в Си.. =).. буду дальше разбираться..

Автор:  Asper [ Сб дек 13, 2008 5:35 pm ]
Заголовок сообщения:  Re: Порт FCE Ultra

Сам через это прошёл, так что не отчаивайся постараюсь помочь :).
Пока что-то не удается залить мою папку DJGPP в файлообменник (в 7z архиве весит 18.4 Мб ), вылетаю со страницы после закачки 12 %, но что-нибудь придумаем.
PSS - это стиль разделителя в пути файла (/ или \\), смотри version.h. В крайнем случае все PSS можно убрать и заменить их теми слэшами, которые у тебя попрут.
Вообще неплохо бы получить полный лог ошибок.

Также проверь свою версию DJGPP утилит, я использую:
make
GNU Make version 3.79.1, by Richard Stallman and Roland McGrath.
Built for i386-pc-msdosdjgpp

ld
GNU ld version 2.17

as
GNU assembler version 2.17 (djgpp) using BFD version 2.17


Версию можно узнать набрав в командной строке имя утилиты с ключом -v (например: make -v).

Автор:  Leency [ Сб дек 13, 2008 7:29 pm ]
Заголовок сообщения:  Re: Порт FCE Ultra

Лучше заливать на ftp://kolibrios.org

Автор:  Asper [ Сб дек 13, 2008 7:33 pm ]
Заголовок сообщения:  Re: Порт FCE Ultra

Там стоит ограничение в 20 Кб на файл по-моему.

Автор:  barsuk [ Сб дек 13, 2008 7:46 pm ]
Заголовок сообщения:  Re: Порт FCE Ultra

Asper писал(а):
Там стоит ограничение в 20 Кб на файл по-моему.

Это только для анонимов. Модераторы - Ghost, Leency, mike.dld, vectoroc - могут дать доступ на фтп, тогда не будет ограничений на размер и тип файлов. См. viewtopic.php?f=7&t=1184&p=21035#p21035

Страница 3 из 6 Часовой пояс: UTC+03:00
Powered by phpBB® Forum Software © phpBB Limited
https://www.phpbb.com/