Author Topic: FB Alpha 0.2.96.92 Release  (Read 39554 times)

Offline JacKc

  • FBNeo Dev
  • ******
  • Posts: 1677
  • Karma: +56/-0
  • Hasta la vista, Baby !
Re: FB Alpha 0.2.96.92 Release
« Reply #60 on: August 19, 2008, 07:50:25 PM »
Even if i'm not a FBA dev', i just can say many thanks to Treble Winner, Iq_132, Cap's, Kev, Pcm2, Oopsware...and all others actors that have made FBA one of the BEST Arcade Emulator :biggrin:

Since few versions, i see many features that have been added, more drivers added too...for some fantastics results.

All my supports for this awesome and wonderfull build called FBA :cool:


Offline 0746

  • Expert
  • *****
  • Posts: 108
  • Karma: +2/-0
Re: FB Alpha 0.2.96.92 Release
« Reply #61 on: August 19, 2008, 10:11:05 PM »
^ Call them warlords :biggrin:
I haven't seen any emulators as organized as this one (except for mame). I haven't seen many emulators which has contributions from this many people as well (except for mame). I think this is the best approach to public projects like this and those who made this possible have my sincerest admiration.


isamu: You have my apologies if you thought that was offending. No harm intended...Think of it as a hello from an old friend.

Offline CaptainCPS

  • FBNeo Dev
  • ******
  • Posts: 1513
  • Karma: +127/-0
  • FB Alpha Team
    • CaptainCPS's Home
Re: FB Alpha 0.2.96.92 Release
« Reply #62 on: August 19, 2008, 10:26:27 PM »
Hey Barry do you or someone else know how I can force the DirectX9 Blitter to be activated under a MinGW compilation?

I have been remaking my MinGW environment from scratch, no packages, I did a manual set up of just what FBA needs to compile:

MinGW ( mingw-runtime, mingw-utils, mingw32-make, binutils )
GCC ( gcc-core, gcc-g77, gcc-g++, gcc-objc )
DirectX9 ( updated libraries for MinGW )
Required for FBA ( perl, nasm, unixutils, Win32 API libs )

This environment is very clean and the compressed 7zip size is just 10MB. For now I did this remake with MinGW v3.1 components and GCC 3.3.1 components. MinGW doesn't complain about nothing but since the GCC is very old it displays warnings while compiling some of the cpu cores, but are cosmetic warnings.

Having done that I have successfully updated Win32 API to its latest version v3.11 and DirectX headers and libraries to DirectX9! (zlib / libpng are not needed in MinGW environment anymore because its implemented in the FBA source now) ... everything is compiling and running very well with the newest DirectX libs...

The thing is that I made the menu choice enabled but when I click on it , the blitter doesn't change, it just reload the active blitter and the menu blitter option doesn't even change

If I could just force it then probably it would work since it have the DX9 libs integrated

ThanX in advance for any help on this matter!

SeeYaa!
 :biggrin:

Offline CaptainCPS

  • FBNeo Dev
  • ******
  • Posts: 1513
  • Karma: +127/-0
  • FB Alpha Team
    • CaptainCPS's Home
Re: FB Alpha 0.2.96.92 Release
« Reply #63 on: August 20, 2008, 12:18:43 AM »
Ok I was able to find the issue, I forgot to add the libs and the .cpp obj to the makefile ^^U...

now after compiling and running FBA when I try to activate the Blitter I have problem with this...

vid_directx9.cpp

Code: [Select]
#ifdef LOAD_EFFECT_FROM_FILE
if (FAILED(D3DXCreateEffectFromFile(pD3DDevice, _T("bicubic.fx"), NULL /* d3dxm */, NULL, 0, NULL, &pEffect, &pErrorBuffer))) {
#else
if (FAILED(D3DXCreateEffectFromResource(pD3DDevice, NULL, MAKEINTRESOURCE(ID_DX9EFFECT), NULL /* d3dxm */, NULL, 0, NULL, &pEffect, &pErrorBuffer))) {
#endif
#ifdef PRINT_DEBUG_INFO
    dprintf(_T("  * Error: Couldn't compile effect.\n"));
dprintf(_T("\n%hs\n\n"), pErrorBuffer->GetBufferPointer());
#endif

Im getting the 'Couldn't compile effect' error...and I know why..but the problem is I dont know how to handle the following with MinGW...

resource.rc

Code: [Select]
ID_DX9EFFECT RCDATA "resource/bicubic.fx"
I removed the compiler conditioning, and when MinGW get to that point an error message come...

Quote
Making debug build...

Generating depend file for src/burner/win32/about.cpp...
Generating depend file for src/burner/win32/resource.rc...
Generating depend file for src/interface/win32/vid_directx9.cpp...
Compiling src/burner/win32/about.cpp...
Compiling resource file resource.rc...
windres: src/burner/win32/resource.rc:38: parse error
cc1: No error: when writing output to

mingw32-make.exe[1]: *** [resource.o] Error 1

ThanX in advance for anyone who help on this  :smilie:

SeeYaa!
 :biggrin:

Offline CaptainCPS

  • FBNeo Dev
  • ******
  • Posts: 1513
  • Karma: +127/-0
  • FB Alpha Team
    • CaptainCPS's Home
Re: FB Alpha 0.2.96.92 Release
« Reply #64 on: August 20, 2008, 02:10:47 AM »
I was able to compile using the following line at 'resource.rc'

Quote
ID_DX9EFFECT RT_RCDATA   "resource/bicubic.fx"

no errors are displayed when compiling, but when I open FBA and try to set the blitter, the first error comes back...

I did a debugging check to see what was the specific error and it seems the data of the resource being stored in memory is invalid for the function. There are 3 possible error results returned from the function if something goes wrong according to MSDN so I'm using this to verify the issue...

Code: [Select]
if (hRes2 == D3DERR_INVALIDCALL) {
    dprintf(_T("  * Error: Couldn't compile shader. D3DERR_INVALIDCALL\n"));
//dprintf(_T("\n%hs\n\n"), pErrorBuffer->GetBufferPointer());
}

if (hRes2 == D3DXERR_INVALIDDATA) {
    dprintf(_T("  * Error: Couldn't compile shader. D3DXERR_INVALIDDATA\n"));
//dprintf(_T("\n%hs\n\n"), pErrorBuffer->GetBufferPointer());
}

if (hRes2 == E_OUTOFMEMORY) {
    dprintf(_T("  * Error: Couldn't compile shader. E_OUTOFMEMORY\n"));
//dprintf(_T("\n%hs\n\n"), pErrorBuffer->GetBufferPointer());
}

the error that is being returned is "D3DXERR_INVALIDDATA" so this means MinGW is not handling RCDATA well for some reason.

I'm wondering now is there is another way to load the "bicubic.fx" for DirectX

Offtopic: Looking around I found out some info regarding on how to make GDI objects as windows to be displayed while using directdraw ^^, so I hope I can work on some fullscreen features later, like configure inputs in fullscreen, use cheats dialog in fullscreen...but well first I have to study the reference I found out  :biggrin:

SeeYaa!
 :biggrin:

Offline Barry Harris

  • dontbeabarry
  • *
  • Posts: 1785
  • Karma: +0/-65535
  • I'm Barry Harris and I like to f*** people over
Re: FB Alpha 0.2.96.92 Release
« Reply #65 on: August 20, 2008, 03:37:55 AM »
What you're looking at there is effect files. See this for more info. I've had a quick look at the blitter a while ago with a view to adding more .fx files. I never really got anywhere though.

I'm not sure why GCC wouldn't like it - sounds like you're hunting it down though.

I do all my testing with GCC/MinGW and I don't get any compile warnings at all. Can you let me know what version of GCC, etc, you're using and the warnings?
Account of Barry Harris; the traitor.
Send me an e-mail at barry@fbalpha.com letting me know how big of a piece of sh** I am.

Offline CaptainCPS

  • FBNeo Dev
  • ******
  • Posts: 1513
  • Karma: +127/-0
  • FB Alpha Team
    • CaptainCPS's Home
Re: FB Alpha 0.2.96.92 Release
« Reply #66 on: August 20, 2008, 04:56:31 AM »
What you're looking at there is effect files. See this for more info. I've had a quick look at the blitter a while ago with a view to adding more .fx files. I never really got anywhere though.

I'm not sure why GCC wouldn't like it - sounds like you're hunting it down though.

I do all my testing with GCC/MinGW and I don't get any compile warnings at all. Can you let me know what version of GCC, etc, you're using and the warnings?

ThanX Barry! ^^

Finally got MinGW + DirectX9 compilation working ^^ , It succesfully loaded the file but without including it on the resource, for this I used the following functions...

D3DXCreateEffectFromFile()
D3DXCompileShaderFromFile()

and these were the functions it had before...

D3DXCreateEffectFromResource()
D3DXCompileShaderFromResource()

Tested FBA and the blitter is running pretty good ^^, the only thing I noticed is the VSync now works in windowed mode too, but at least in this PC its going slow, anyway when you go fullscreen with VSync it works like icecream!..other features like scanlines , etc work fine as well, so the issue with VSync should be easily handled by adding an option for the user like "Use VSync fullscreen only"

What I have to check now is why FBA is asking me for d3dx9.dll to run (that remembers me the kaillera issue xD) and if the .FX file is not needed ( I hope not lol )

SeeYaa!
 :biggrin:





Offline 0746

  • Expert
  • *****
  • Posts: 108
  • Karma: +2/-0
Re: FB Alpha 0.2.96.92 Release
« Reply #67 on: August 20, 2008, 05:13:21 AM »
What I have to check now is why FBA is asking me for d3dx9.dll to run (that remembers me the kaillera issue xD) and if the .FX file is not needed ( I hope not lol )
Newer versions of DirectX SDK dynamically links to their corresponding version of d3dx unlike the old version used by Barry.

Offline CaptainCPS

  • FBNeo Dev
  • ******
  • Posts: 1513
  • Karma: +127/-0
  • FB Alpha Team
    • CaptainCPS's Home
Re: FB Alpha 0.2.96.92 Release
« Reply #68 on: August 20, 2008, 04:16:26 PM »
 I think I will give up on trying to use DirectX9 in MinGW for FBA, because I dont like the idea of needing the DLL to run FBA...Microsoft sure knows how to f*** up things (sorry for the word, but there is no way around it xD)

I will go back to my latest stable progress using DirectX7 libs for MinGW, so DirectX9 Blitter will be disabled as usual in MinGW compilations

everyone should not worry about this failure on implementing DirextX9 for MinGW compilation without relying on the DLL, there are lot of other nice things done related to compiling with MinGW ^^ like being able to use the latest Win32 API libs, using updated zlib / libpng libraries included as they come in the original package (no '-lz' or '-lpng' needed in makefile) and other things Im working on related to compilation  :smilie:

Now Im gonna see if I can implement the GDI + DirectDraw thing, that btw Direct3D seems to have it too..if this work, as I said previously we should be able to call dialogs in fullscreen mode ^^, there is no 100% probability it will work but I'll give it a shot anyway  :biggrin:

SeeYaa!
 :biggrin:

Offline isamu

  • Jr. Member
  • **
  • Posts: 94
  • Karma: +2/-2
Re: FB Alpha 0.2.96.92 Release
« Reply #69 on: August 25, 2008, 03:06:35 AM »
The first versions of MAME that used Direct3D used Jan's implementation but current MAME has been rewritten and Jan's code is gone.

Treble, I noticed that MAME allows you to use various scanline overlay effects that are taken from actual .png screenshots. There is a thread *HERE* containing various entries from both Twisty and John IV and the files are simply png screenshots. I find this discovery somewhat fascinating, and leads me to my question:

If all mame needs to incorporate the scanline overlay effect is a simple png screenshot containing whatever scanline effect, does that mean I can take a screenshot from within FBA utilizing one of Jan's effects, save it as a png file, and then simply paste it into MAME's artwork folder? If not, is there a similar way to achieve this?

For example, here's the effect I'm looking for: (see attached)
GENTLEMEN: START YOUR ENGINES!!

Daytona USA is emulated for the PC.

*NOTHING more needs to be said*