нужено проверить работоспособность кроссплатформенной игры

Все что связано с программированием на Амиге.

Модераторы: striimii, Vinnny

нужено проверить работоспособность кроссплатформенной игры

Сообщение SandySandy 29 янв 2009, 18:05

исходники здесь http://sourceforge.net/projects/fheroes2
для сборки нужен gcc, SDL, SDL_Mixer, libpng.
для запуска игры нужен оригинальный heroes2.agg
по отзыву англоязычного пользователя AmigaOS4, после загрузки карты, не загружается блок героев и замков, но общаться с ним трудно.
я локализовал проблемный код, но я не понимаю пока из за чего там ломается алгоритм, и мне нужна быстрая обратная связь кто сможет тестировать данный сабж. :)
SandySandy
Юный Амигофренд
Юный Амигофренд
 
Сообщения: 12
Зарегистрирован: 29 янв 2009, 17:53

Re: нужено проверить работоспособность кроссплатформенной игры

Сообщение easy_john 30 янв 2009, 02:19

какая минимальная версия gcc нужна?
я например просто не вижу новых gcc для классической амиги: http://aminet.net/search?name=gcc*&q_desc=OR
PegasosII G4 1.0/1Gb/80Gb/Ati 9200/MorphOS unreg/Debian
a4000/PPC 233mhz/68060 50mhz/128mb/cv ppc/toccata/x-surf/kickflash/indivision/AOS3.9-4.0
a1200/PPC 200mhz/68040 25mhz/256mb/bv ppc/delfina/wifi/indivision sd+ff/AOS 3.9-4.0
a600/68000 7mhz/8mb fast/wifi/AOS 3.0
Аватара пользователя
easy_john
Менеджер
Менеджер
 
Сообщения: 4296
Зарегистрирован: 03 мар 2006, 15:24
Откуда: SPb

Re: нужено проверить работоспособность кроссплатформенной игры

Сообщение SandySandy 30 янв 2009, 04:49

версия gcc подойдет и 3 и 4.
у меня есть англоязычный пользователь который и сообщил о проблеме.
он использует PPC-G4, gcc (GCC) 4.2.4, AmigaOS4.
SandySandy
Юный Амигофренд
Юный Амигофренд
 
Сообщения: 12
Зарегистрирован: 29 янв 2009, 17:53

Re: нужено проверить работоспособность кроссплатформенной игры

Сообщение SandySandy 30 янв 2009, 04:57

от libpng можно отказаться так как она юзается только пока в утилитах.
SandySandy
Юный Амигофренд
Юный Амигофренд
 
Сообщения: 12
Зарегистрирован: 29 янв 2009, 17:53

Re: нужено проверить работоспособность кроссплатформенной игры

Сообщение SandySandy 30 янв 2009, 05:32

а существует ли образ AmigaOS4 для qemu?
я бы мог сам все протестировать...
SandySandy
Юный Амигофренд
Юный Амигофренд
 
Сообщения: 12
Зарегистрирован: 29 янв 2009, 17:53

Re: нужено проверить работоспособность кроссплатформенной игры

Сообщение easy_john 30 янв 2009, 06:35

SandySandy писал(а):версия gcc подойдет и 3 и 4.

эх, мил человек, так нетуть под классику ни 3 ни 4. во всяком случае я на аминете не вижу. вижу только вторую.
если скажешь, где более новые взять - хорошо будет.
и на хомсайте гцц то же не видно.

SandySandy писал(а):у меня есть англоязычный пользователь который и сообщил о проблеме.
он использует PPC-G4, gcc (GCC) 4.2.4, AmigaOS4.

кстати, для Aos4 я его то же не вижу.

гугл пока показал только :
"26. January, 2009 Hyperion Entertainment is proud to announce the availability of the Software Development Kit Version 53.13 for AmigaOS 4.1. The new SDK features the gcc 4.2.4 compiler, binutils 2.18 (with support for the PowerPC 440ep), as well as updated header files and autodocs for AmigaOS 4.1."
т.е. я так понимаю, что простые пользователи этот сдк не увидят?

SandySandy писал(а):а существует ли образ AmigaOS4 для qemu?
я бы мог сам все протестировать...

если бы. четвертая ось идет только на амижном железе и на powerpc платах (всего на 2-3 штуках). вроде ее пытались запустить на макмини, но на сколько успешно я не следил. полноценных эмуляторов powerpc машин пока нет, на сколько я знаю сейчас только софтинка pearpc пытается, и то вроде падуча и дает 30% скорости от оригинала.
Ну а родная Aos4 в России вообще у считанных единиц.
PegasosII G4 1.0/1Gb/80Gb/Ati 9200/MorphOS unreg/Debian
a4000/PPC 233mhz/68060 50mhz/128mb/cv ppc/toccata/x-surf/kickflash/indivision/AOS3.9-4.0
a1200/PPC 200mhz/68040 25mhz/256mb/bv ppc/delfina/wifi/indivision sd+ff/AOS 3.9-4.0
a600/68000 7mhz/8mb fast/wifi/AOS 3.0
Аватара пользователя
easy_john
Менеджер
Менеджер
 
Сообщения: 4296
Зарегистрирован: 03 мар 2006, 15:24
Откуда: SPb

Re: нужено проверить работоспособность кроссплатформенной игры

Сообщение SandySandy 30 янв 2009, 09:40

мне не обязательно AmigaOS4.
Я так понимаю у них у всех одни корни.
SandySandy
Юный Амигофренд
Юный Амигофренд
 
Сообщения: 12
Зарегистрирован: 29 янв 2009, 17:53

Re: нужено проверить работоспособность кроссплатформенной игры

Сообщение SandySandy 30 янв 2009, 09:41

А вы какой версией gcc софт собираете? SDL есть?
SandySandy
Юный Амигофренд
Юный Амигофренд
 
Сообщения: 12
Зарегистрирован: 29 янв 2009, 17:53

Re: нужено проверить работоспособность кроссплатформенной игры

Сообщение anny 30 янв 2009, 14:26

SandySandy, под os3 sdl тормозит в злое зло. Потому как sdl не поддерживает на классике не warp3d, не какие либо амигаос специфический фичи. Т.е. это тупо софтварный порт под систему, а это значит что все что под классику на sdl по работе с графикой нормальной и музой - будет тормозить и не юзабельно абсолютно. Т.е. чтобы просто так вот чтото качнуть, собрать и юзать - такого нет. Sdl нормально только на aos4, mos и aros. У меня лично gcc такое на классике:
Код: Выделить всё
9/0.Ram Disk:> gcc -v
Reading specs from /gg/lib/gcc-lib/m68k-amigaos/2.95.3/specs
gcc version 2.95.3 20010315 (release)

9/0.Ram Disk:>


Но вот например здесь: http://ftp.back2roots.org/geekgadgets/amiga/m68k/alpha/
я вижу что есть gcc-3.4.0-bin.tar.gz . Я себе не ставил, т.к. юзаю vbcc, а gcc практически не пользуюсь, поэтому и стоит старая.

По поводу "одних корней" можно следущее сказать. Если соберешь 68к прогу, то она под aos4/mos запустится и будет работать (если конечно никаких сторонних библиотек не надо). В morphos эмуляция 68к самая нормальная , в aos4 возможно грим риперы и прочие гуры и ребуты. Если же собирать под aos4 нативно (находясь при этом на классике), то я например собираю все vbcc, но, нужны добавления в код. Такие как например дефайнить использование инлайнов , все иклуды менять на <proto/include.h> (т.е. аля #include <clib/asdasasd.h> нельзя), и при открытии закрытии библиотека нужно добавлять код про Ifase. Вот как код выглядит чтобы нативно собирать один и тотже сорец под aos4 и под aos3:

Код: Выделить всё
    printf("warp3d.library init ..");
    Warp3DBase = OpenLibrary("Warp3D.library", 2L);

//if os4

    #ifdef __amigaos4__
    IWarp3D = (struct Warp3DIFace *) GetInterface(Warp3DBase, "main", 1, NULL);
    if (!Warp3DBase && !IWarp3D) {
        printf("Error opening Warp3D library\n");
        exit(0);
    };
    #endif

//if os3
    if (!Warp3DBase) {
        printf("Error opening Warp3D library\n");
        exit(0);
    };

    printf("ok\n");

#endif   


Соотвественно и при закрытии тоже самое. А на моменте компиляции если для aos3 то просто: vc file.c -o file -lauto , а для aos4: vc +aosppc file.c -o file -lauto. К томуже еще есть какието несовмстимости с commodities на сколько я помню.

ps. Если интересно посмотреть sdl работу на классике, можно качнуть последний eurochart, который якобы пытался быть кросплатформенным (за счет этого самого sdl). В итоге даже в емуляторе , на быстром pc, тормоза просто слайдшовные.
anny
Беспардонный Амигофлуд
Беспардонный Амигофлуд
 
Сообщения: 1267
Зарегистрирован: 05 дек 2004, 01:22

Re: нужено проверить работоспособность кроссплатформенной игры

Сообщение easy_john 30 янв 2009, 15:01

ну вот, ты его запугал, теперь он не будет портировать героев на амигу.. :(
PegasosII G4 1.0/1Gb/80Gb/Ati 9200/MorphOS unreg/Debian
a4000/PPC 233mhz/68060 50mhz/128mb/cv ppc/toccata/x-surf/kickflash/indivision/AOS3.9-4.0
a1200/PPC 200mhz/68040 25mhz/256mb/bv ppc/delfina/wifi/indivision sd+ff/AOS 3.9-4.0
a600/68000 7mhz/8mb fast/wifi/AOS 3.0
Аватара пользователя
easy_john
Менеджер
Менеджер
 
Сообщения: 4296
Зарегистрирован: 03 мар 2006, 15:24
Откуда: SPb

Re: нужено проверить работоспособность кроссплатформенной игры

Сообщение SandySandy 30 янв 2009, 18:01

Я не собираюсь портировать движок на амигу :) ибо у меня нет ни первого (PPC) ни второго (AmigaOS).
Там и портировать на самом деле ничего не нужно ибо все писалось кроссплатформенно изначально, и работает желеэно (сам тестил) на железном sparc и в эмуляторе qemu + powerpc.
Имеет место быть ошибка при чтении с диска, еще не понятно либо специфика AmigaOS либо бага в gcc.
Хотелось просто разобраться в данном вопросе :)
SandySandy
Юный Амигофренд
Юный Амигофренд
 
Сообщения: 12
Зарегистрирован: 29 янв 2009, 17:53

Re: нужено проверить работоспособность кроссплатформенной игры

Сообщение easy_john 30 янв 2009, 20:13

SandySandy писал(а):Имеет место быть ошибка при чтении с диска, еще не понятно либо специфика AmigaOS либо бага в gcc.
Хотелось просто разобраться в данном вопросе :)

давай я попробую собрать твои сорцы тем гцц, который есть последний под классику.
только тогда напиши подробно, что надо делать, по пунктам.
PegasosII G4 1.0/1Gb/80Gb/Ati 9200/MorphOS unreg/Debian
a4000/PPC 233mhz/68060 50mhz/128mb/cv ppc/toccata/x-surf/kickflash/indivision/AOS3.9-4.0
a1200/PPC 200mhz/68040 25mhz/256mb/bv ppc/delfina/wifi/indivision sd+ff/AOS 3.9-4.0
a600/68000 7mhz/8mb fast/wifi/AOS 3.0
Аватара пользователя
easy_john
Менеджер
Менеджер
 
Сообщения: 4296
Зарегистрирован: 03 мар 2006, 15:24
Откуда: SPb

Re: нужено проверить работоспособность кроссплатформенной игры

Сообщение SandySandy 31 янв 2009, 06:14

тогда нужен gcc, make, SDL и SDL_mixer вместе с header файлами, также нужен libpng но я могу поправить исходник чтобы собирался и без него.
выкачать исходники из svn по адресу выше и сделать make.
SandySandy
Юный Амигофренд
Юный Амигофренд
 
Сообщения: 12
Зарегистрирован: 29 янв 2009, 17:53

Re: нужено проверить работоспособность кроссплатформенной игры

Сообщение SandySandy 31 янв 2009, 06:38

я нашел ошибку, это баг в реализации gcc для AmigaOS4.
после вызова tellg возвращается верный результат и портится оригинальная позиция... странно конечно это все.. %)
SandySandy
Юный Амигофренд
Юный Амигофренд
 
Сообщения: 12
Зарегистрирован: 29 янв 2009, 17:53

Re: нужено проверить работоспособность кроссплатформенной игры

Сообщение easy_john 31 янв 2009, 06:59

ночью ползенее спать. :)
PegasosII G4 1.0/1Gb/80Gb/Ati 9200/MorphOS unreg/Debian
a4000/PPC 233mhz/68060 50mhz/128mb/cv ppc/toccata/x-surf/kickflash/indivision/AOS3.9-4.0
a1200/PPC 200mhz/68040 25mhz/256mb/bv ppc/delfina/wifi/indivision sd+ff/AOS 3.9-4.0
a600/68000 7mhz/8mb fast/wifi/AOS 3.0
Аватара пользователя
easy_john
Менеджер
Менеджер
 
Сообщения: 4296
Зарегистрирован: 03 мар 2006, 15:24
Откуда: SPb

След.

Вернуться в Программирование

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 10

cron