21 December 2017, 07:31 | #21 | |
Registered User
Join Date: May 2016
Location: Rostock/Germany
Posts: 132
|
Quote:
|
|
21 December 2017, 07:39 | #22 | |
Registered User
Join Date: May 2016
Location: Rostock/Germany
Posts: 132
|
Quote:
If desired, the AMMX routines can be disabled entirely by disabling the Apollo_EnableAMMX() call. But in any case, the mentioned call does check whether the code is running on a machine that has the instructions available. Even the regular 68k blitting functions should be considerably faster than the generic C counterpart from SDL. |
|
21 December 2017, 12:20 | #23 |
Registered User
Join Date: Feb 2012
Location: #DrainTheSwamp
Posts: 4,545
|
I didnt noticed, so there is still some room for improvements with updating to final 1.2.15
ok, I will try this in my next build. so the AMMX sdl functions are just a prove of concept for now - do not boost things on the vampire? Last edited by emufan; 21 December 2017 at 12:27. |
21 December 2017, 13:30 | #24 | |
Registered User
Join Date: May 2016
Location: Rostock/Germany
Posts: 132
|
Quote:
Whether one gets an actual boost by these blitting functions is a matter of the respective applications or games. Many programs I've seen don't use the SDL blitting functions but draw everything by themselves. |
|
21 December 2017, 13:49 | #25 | |
Registered User
Join Date: Feb 2012
Location: #DrainTheSwamp
Posts: 4,545
|
Quote:
if that's right, which other functions will use AMMX if available? #1) reading in blitapollo.h: ApolloCopyRect, ApolloARGBtoRGB565 ... are these the function one has to use in a game? |
|
21 December 2017, 21:26 | #26 | |
Registered User
Join Date: May 2016
Location: Rostock/Germany
Posts: 132
|
Quote:
Arti asked me to help him out with an underperforming game he was porting. That's why I concentrated on faster blit functions. Otherwise, there are two other places in SDL where I plan to put in some work (given some spare time). The audio mixer could be faster. Also, RectFill might warrant some attention. Apart from these places where data conversion will be done, SDL in itself doesn't require too much CPU time by itself. It's mostly game logic and casual coding that makes recent titles slow on less potent hardware. |
|
22 December 2017, 16:57 | #27 |
Registered User
Join Date: Feb 2012
Location: #DrainTheSwamp
Posts: 4,545
|
hmm, lotsa details.
but what are the exact sdl functions which will use the AMMX extension if available |
09 March 2018, 23:24 | #28 |
Registered User
Join Date: Feb 2012
Location: #DrainTheSwamp
Posts: 4,545
|
I try to build GnNeo, which is almost done, but linking give some errors,
which makes no sense. using my "old" libSDL.a which was ok for many things i build, now I get these things: Code:
libSDL.a(SDL_string.go) :SDL_string.go: undefined reference to `_ctype_' libSDL.a(SDL_string.go) :SDL_string.go: undefined reference to `_ctype_' libSDL.a(SDL_string.go) :SDL_string.go: undefined reference to `_ctype_' libSDL.a(SDL_string.go) :SDL_string.go: undefined reference to `_ctype_' libSDL.a(SDL_string.go) :SDL_string.go: undefined reference to `_ctype_' libSDL.a(SDL_string.go) :SDL_string.go: more undefined references to `_ctype_' follow libSDL.a(SDL_cgxvideo.go) :SDL_cgxvideo.go: undefined reference to `Delay' libSDL.a(SDL_cgxvideo.go) :SDL_cgxvideo.go: undefined reference to `Delay' libSDL.a(SDL_ahiaudio.go) :SDL_ahiaudio.go: undefined reference to `Delay' libSDL.a(SDL_sysjoystick.go) :SDL_sysjoystick.go: undefined reference to `Delay' libSDL.a(SDL_amigaevents.go) :SDL_amigaevents.go: undefined reference to `Open' libSDL.a(SDL_amigaevents.go) :SDL_amigaevents.go: undefined reference to `MapRawKey' libSDL.a(SDL_amigaevents.go) :SDL_amigaevents.go: undefined reference to `MapRawKey' libSDL.a(SDL_amigaevents.go) :SDL_amigaevents.go: undefined reference to `MapRawKey' libSDL.a(SDL_amigaevents.go) :SDL_amigaevents.go: undefined reference to `MapRawKey' libSDL.a(SDL_amigaevents.go) :SDL_amigaevents.go: undefined reference to `Close' libSDL.a(SDL_amigaevents.go) :SDL_amigaevents.go: undefined reference to `MapRawKey' libSDL.a(SDL_amigaevents.go) :SDL_amigaevents.go: undefined reference to `MapRawKey' Code:
CFLAGS="-DNDEBUG -D__AMIGA__ -I/cygdrive/d/SDL/include -mcrt=clib2 -O3 -m68020-40 -g" Code:
$ m68k-amigaos-nm.exe /cygdrive/d/SDL/lib/libSDL.a | grep MapRawKey m68k-amigaos-nm: SDL_cgxyuv.go: no symbols m68k-amigaos-nm: SDL_cgxgl_wrapper.go: no symbols m68k-amigaos-nm: SDL_stdlib.go: no symbols m68k-amigaos-nm: SDL_malloc.go: no symbols m68k-amigaos-nm: SDL_getenv.go: no symbols U _MapRawKey #1) playing with sdl 1.2.15, i found these warnings, which match some of the errors above: Code:
video/amigaos/SDL_amigaevents.c:195: warning: implicit declaration of function ‘Open’ video/amigaos/SDL_amigaevents.c:200: warning: implicit declaration of function ‘Close’ video/amigaos/SDL_cgxvideo.c:1402: warning: implicit declaration of function ‘Delay’ video/amigaos/SDL_amigaevents.c:748: warning: implicit declaration of function ‘MapRawKey’ what the heck is wrong here? #2) video/amigaos/SDL_amigaevents.c: Code:
#ifdef STORMC4_WOS if( (actual=MapRawKey(&event,buffer,5,NULL))>=0) this is the very same folder I build my libSDl couple weeks ago, not a bit changed, now out of a sudden such errors, even with the one build many weeks ago. the new player here is gcc6, but all this makes no sense. need a break :/ Last edited by emufan; 10 March 2018 at 03:06. |
10 March 2018, 05:59 | #29 |
Semi-Retired
Join Date: Mar 2012
Location: Leiden / The Netherlands
Posts: 1,993
|
Need to add proto/dos.h for Open, Delay, Close and proto/keymap.h for maprawkey.
|
10 March 2018, 10:10 | #30 |
Registered User
Join Date: Jul 2008
Location: Poland
Posts: 662
|
Or link with -lauto and/or -lamiga
_ctype_ comes from clib2 |
10 March 2018, 10:41 | #31 | |
Registered User
Join Date: Feb 2012
Location: #DrainTheSwamp
Posts: 4,545
|
I will try that.
Quote:
but some new just pop up: ==> to make it even more confusing: the proto did not help, but was fixed, because I was using "-noixemul" instead of my previous "-mcrt=clib2" ==> I try AmiDevCpp now Code:
memory.o(.text+0xf96): undefined reference to `write_irq2pos' memory.o(.text+0xfb4): undefined reference to `write_irq2pos' memory.o(.text+0xf70): undefined reference to `write_neo_control' Code:
// __inline__ void write_irq2pos(Uint32 data) { void write_irq2pos(Uint32 data) { ... // __inline__ void write_neo_control(Uint16 data) { void write_neo_control(Uint16 data) { #2) now with gcc3 (AmiDevCpp) i get some asm errors: Code:
m68k-amigaos-gcc.exe -DHAVE_CONFIG_H -I. -I.. -DDATA_DIRECTORY=\\"data\\" -DNDEBUG -D__AMIGA__ -D_HAVE_STDINT_H -I/SDL/include -m68020-40 -I/SDL/ -D_GNU_SOURCE=1 -D_REENTRANT -Wall -Wno-unused -funroll-loops -ffast-math -g -MT video.o -MD -MP -MF .deps/video.Tpo -c -o video.o video.c .../Local/Temp/ccj9YFfJ.s: Assembler messages: .../Local/Temp/ccj9YFfJ.s:6739: Error: parse error -- statement `moveb d3,(sr.3)' ignored make.exe[3]: *** [video.o] Error 1 Last edited by emufan; 10 March 2018 at 13:21. |
|
10 March 2018, 14:29 | #32 |
bye
Join Date: Jun 2016
Location: Some / Where
Posts: 680
|
instead of removing __inline__ you coud fix its definitions, I did not look into your code so I am guessing:
Code:
#if defined(__STDC_VERSION__) && (__STDC_VERSION__ >= 199901L) #define __inline__ inline #else #define __inline__ extern inline #endif |
10 March 2018, 16:12 | #33 |
Registered User
Join Date: Feb 2012
Location: #DrainTheSwamp
Posts: 4,545
|
*OMG* finaly a binary, does start with tiny window, switches to full screen and does crash winuae.
done with gcc6, since I could not fix the damn gcc3 assembler. I tried adding your lines in memory.c, but it makes no diff. funny enough since other __inline__ functions seems just fine. sdl stuff was gone, when I skiped clib2, now -noixemul getopt related things I fixed with getopt_long source I found, build and added getopt_long.o. furthermore removed some "external" from simple variables. *now* I can look into the GnNeo fullscreen vs window mode problem #1) not much progress. it does switch from tiny window to a black overlay, I can move the "hidden" window, so it's visible again, but it does guru some moments later. Last edited by emufan; 10 March 2018 at 19:32. |
11 March 2018, 22:45 | #34 |
Registered User
Join Date: Jul 2008
Location: Poland
Posts: 662
|
inlines in memory.c are fine on gcc 2.95.3
BTW: [ Show youtube player ] I have also alredy ported snes9x before you : [ Show youtube player ] Lolz Last edited by arti; 11 March 2018 at 23:11. |
13 March 2018, 12:25 | #35 |
Registered User
Join Date: Aug 2014
Location: Brindisi (Italy)
Age: 70
Posts: 8,248
|
@arti
I would like to test the new version of GnGeo r1142 hoping it works up WinUAE, can you download it somewhere? |
13 March 2018, 12:40 | #36 |
Registered User
Join Date: Jul 2008
Location: Poland
Posts: 662
|
|
13 March 2018, 13:21 | #37 |
Registered User
Join Date: Aug 2014
Location: Brindisi (Italy)
Age: 70
Posts: 8,248
|
Thank you Arti, GnGeo r1142 it works and is very fast on WinUAE, but the colors are bad, tested UAE-Gfx 15,16 and 32Bit the result does not change, also tried card Picasso IV with the same result.
Last edited by AMIGASYSTEM; 06 April 2018 at 18:00. |
13 March 2018, 13:53 | #38 |
Registered User
Join Date: Jul 2008
Location: Poland
Posts: 662
|
Try in window.
|
13 March 2018, 14:06 | #39 |
Registered User
Join Date: Aug 2014
Location: Brindisi (Italy)
Age: 70
Posts: 8,248
|
Even in the window you can see badly, see screenshot !
Last edited by AMIGASYSTEM; 06 April 2018 at 18:00. |
13 March 2018, 14:10 | #40 |
Registered User
Join Date: Jul 2008
Location: Poland
Posts: 662
|
Fine here, make sure that game script runs proper gngeo.exe.
EDIT: Is screen set to 15bit not 15bit PC? |
Currently Active Users Viewing This Thread: 1 (0 members and 1 guests) | |
Thread Tools | |
Similar Threads | ||||
Thread | Thread Starter | Forum | Replies | Last Post |
SDL problem. | tolkien | Coders. C/C++ | 10 | 24 March 2015 03:29 |
use SDL 1.2.13 with AmyDevCpp | TheDarkCoder | Coders. General | 3 | 18 August 2009 20:55 |
req details for sdl | turrican3 | request.Other | 0 | 20 April 2008 22:06 |
WinUAE w/SDL | mangamuscle | request.UAE Wishlist | 8 | 31 January 2007 11:41 |
What do you know about Amiga SDL? | Tolismlf | Amiga scene | 6 | 15 November 2004 18:54 |
|
|