Next Generation Emulation banner
Status
Not open for further replies.
1 - 20 of 37 Posts

·
VBA 2 developer
Joined
·
404 Posts
Discussion Starter · #1 · (Edited)
From the ReadMe:
What is VBA S?
VisualBoyAdvance S is an unofficial modification of
the original VisualBoyAdvance by Forgotten.
My nickname is Spacy or Spacy51.http://forums.ngemu.com/

My aim:
I want to make this emulator fit my needs and hopefully the needs of others,
which want a light-weight, small, fast, easy to use and multimedial emulator for the GBA
that makes as much use of the power of modern PCs as possible, but with sense.
If you need one of the removed features, just use the official emulator build
or try another one of the many VBA modificated versions.

Design guidelines:
- Easy GUI for people which are not familiar with GB/A emulation
- Still keep debug and dumping functions
- Include everything in one EXE file (no need to search for any DLLs/Applications except DirectX)
- Use only free (as in freedom) software
- Remove senseless/gay features
- Strive for hardware acceleration
Here's the link to the latest version: http://forums.ngemu.com/visualboy-advance/65095-vba-s-s-spacy-4.html#post949142

--------------------

Hi.
I'll continue in this thread, because the old title "VBA -> Direct3D9" just doesn't fit enough ;)


Here's my new release:
S1.7.6:
Emu:
- Readded MMX macro
- Updated zlib to 1.2.3
- Changed some first start options
- Other small changes
- Put zlib & libpng in seperate Projects
- Added most changes from the latest CVS source
- Small changes to ROM Header Info (just4fun)
- Fixed the linker error (new&delete defined twice)

Filters:
- Speeded up HQ3X code
- Fixed LQ2X using HQ2X functions

Display:
- Added extended display mode selection (GDI/D3D)
(Display Adapter, Resolution, Bit Depth, Frequency)
- No more unnecessary black borders in full screen
- Direct3D doesn't always take the whole screen (only if you want)
- Direct3D shows menu and windows correct
- Direct3D doesn't show a black screen if left fullscreen to Windows
- Changes on max scale are applied immediately


Sound:
- Updated sound to DirectSound8


Known Bugs:
- fsMaxScale = 1 in Direct3D fullscreen results in wrong image size
- Direct3D: Menu toggle takes a little too long


Download:
Binary & Readme
Source Code

NEEDED: DirectX DLL [d3dx9_26.dll]
(YOU NEED THIS EVEN IF
YOU ALREADY HAVE INSTALLED THE LATEST DirectX9 RUNTIME)
 

·
VBA 2 developer
Joined
·
404 Posts
Discussion Starter · #5 · (Edited)
I'm creating a config dialog where I'm going to cover all the menu settings because setting up the options for a fresh VBA without ini's is a pain...

The audio tab is already finished and working.
 

·
VBA 2 developer
Joined
·
404 Posts
Discussion Starter · #11 ·
Sorry, but I can't fix a problem that I don't have *g*
I own some Sound Blaster Live! Value Cards (OEM), but those run fine with VBA.
 

·
VBA 2 developer
Joined
·
404 Posts
Discussion Starter · #14 · (Edited)
WIP release

Here is a small status update for those who are interested:

VBA 1.7.7 WIP
BIN&DLL


Edit:
Sorry, I forgot some infos *g*

Code:
- Fixed 3 Bugs in Gameboy Mono Color Picker
- Added Color Set: Real Colors
  (Thanks to TheCloudOfSmoke)
- Rearranged source code
- Removed "Use old synchronization" option
- Added Config Dialog (this will be an alternative to the menu)
- Added Audio Tab to the config dialog
- Added more Tabs to the config dialog
- Menu cleanup
- Added changes of official VBA 1.8.0 beta3 (including huge core changes)
 

·
VBA 2 developer
Joined
·
404 Posts
Discussion Starter · #17 ·
Well, I used WinMerge to have a look at the changes. Most of the changes were internal (CPU, Memory, Flash, EEProm, etc.)

There weren't much GUI changes or new functions. Only the Game Overridables got a new option, as far as I can remeber.

If you got some questions, just ask and I'll have a closer look at it ;)


I made a quick measurement between the old and the new core, and I got 10% slower performance, but that wasn't a very accurate measurement.

And as long as pokemonhacker improved compatibility, I will deal with it.
 

·
VBA 2 developer
Joined
·
404 Posts
Discussion Starter · #23 ·

·
VBA 2 developer
Joined
·
404 Posts
Discussion Starter · #24 · (Edited)
tisurame said:
Another request: an option to "keep the aspect ratio", like other emulators have.
Good news for you, I worked on that till 2 a.m. last night. Stretching with aspect ratio is already fine in d3d, I only need to spend some more work on the image centering part.

I needed many hours for this, because VBA now does not calculate the image vertices every single frame, but only when the windows size changes. Moreover I switched from doing the image size calculation right at the vertices to setting up the D3D projection matrix to make 0.0f and 1.0f be the minimum and maximum image position, but already with aspectRatio and centered.

Kind of hard to explain. Alltogether it should be faster now :agree:

We will see what I can do to GDI, but I think I will first release another WIP in some days. Stay tuned :)
 

·
VBA 2 developer
Joined
·
404 Posts
Discussion Starter · #27 ·
I already notices that there were some new problems in the new CVS changes, because some palette data in the Harvest Moon 3 menu seem to be wrong. I think there will not be a problem for me, because I only released WIPs for now with your changes.

I will just wait for your new bugfixes and everything will be okay.

P.S.:
I have just sent you a PM to ask for your contact data.
 

·
VBA 2 developer
Joined
·
404 Posts
Discussion Starter · #29 · (Edited)
VBA WIP 2006_02_11 Download

Hi there!
I have put together another fine Work-In-Progress release.

PokemonHacker is actualy fixing some bugs in the GB emulation core. I will release my 1.7.7 final version as soon as he is finished with fixing bugs. But I also have to complete some things (HQ4x for example).

Here are the changes to the last WIP version:
Code:
- Applied mhamanaka's patch for the jopyad config problems for japanese users
- Updated DirectInput to version 8
- Updated DirectSound to version 8
- Changed DirectX Initializations
- Updated GNU GPL info in every source file
- Removed some remaining SDL code
- Increased code's 64 bit compatibility
- Fixed Tab order for Option Dialog
- Dialog for video settings now working
- D3D: Calculation of the image position is now done only once instead of every frame
- Pre-defined full screen resolutions now keep the current bit depth
- Pre-defined 1024 & 1280 modes work now with D3D
- Replaced TheCloudOfSmoke's color set with a better one, made by PokemonHacker
- Made fullscreen mode select code look better
- Removed remaining GUID variables from DirectDraw
- Added option to D3D to keep aspect ratio (affects windowed & fs mode)
- Removed MaxScale option (it is useless in my eyes and hard to implement with matrices)
- Updated about box
The files:
Optimized Binary [MMX, SSE, UPX compressed]
http://www.magicstone.de/spacy/VBA/WIP_2006_02_11/VBA_WIP_2006_02_11_BIN.7z

d3dx9_28.dll [download if missing]
http://www.magicstone.de/spacy/VBA/WIP20062101/d3dx9_28.7z

Complete source code [ready to compile]
http://www.magicstone.de/spacy/VBA/WIP_2006_02_11/VBA_WIP_2006_02_11_SRC.7z


have fun finding bugs :p
 

·
VBA 2 developer
Joined
·
404 Posts
Discussion Starter · #32 · (Edited)
Sorry, but if the display mode is not shown in the list, the hardware does not support it. Moreover I do not think there are any graphic cards / displays that support 240 x 160.

Why don't you just select the best display mode? VBA scales the image to the maximum, so you do not lose any pixels.
And if you want to take screenshots, there is an extra menu entry and a shortcut for that.
 

·
VBA 2 developer
Joined
·
404 Posts
Discussion Starter · #36 ·
I have removed the skin option because I do not like skins at all :D

1x size works for me in every display mode. Are you using pixel filters ?
 

·
VBA 2 developer
Joined
·
404 Posts
Discussion Starter · #54 · (Edited)
Thanks for your bug report :D

I just fixed it:
DirectSound.cpp:
dsbdesc.dwFlags = DSBCAPS_GETCURRENTPOSITION2|DSBCAPS_CTRLPOSITIONNOTIFY|DSBCAPS_GLOBALFOCUS;

the last flag was not set.


To the save issue:
I did not add the vba-over.ini suport in my build, because I thought it would not be needed. Moreover I removed the choice between 64k and 128k saves, because I thought auto-detect could do this by hisself.
Guess I was wrong.
I will have a look at that as soon as my broken glasses are replaced /O.O\


EDIT:
I just finished completing the hq3x and hq4x filters, including 16bit.
Do not see it as a WIP but just as a little test build.
Next version shall be a prerelease or a final.
 

·
VBA 2 developer
Joined
·
404 Posts
Discussion Starter · #57 ·
Yes, I know.
That is because I am using the latest CVS core.

pokemonhacker is fixing all that stuff at the moment. Just be patient.
 

·
VBA 2 developer
Joined
·
404 Posts
Discussion Starter · #62 ·
warstoke said:
ive been having another small problem with it forgetting the controler config i use a usb game pad and almost every time i start it up i have to reconfigure it.
on the issue with the directx dlls
http://www.threelights.de/index.php?page=projects/d3dx9_xx_dll_files.php
has them all in 1 installer

Hi. I jsut tried that game pad bug out. [Logitech RumblePad 2].
Everythign works fine if you keep your game pad plugged. But if you disconnect it and start VBA, VBA will automaticly reset the devices's configuration because it can not find the correspondant device.

Maybe it would be better to just ignore the [at this moment] wrong settings and keep the button config, so it will still be usable when you reconnect your game pad and start VBA.

I will definitely have alook at it as soon as I have more spare time from school.
 

·
VBA 2 developer
Joined
·
404 Posts
Discussion Starter · #64 ·
Hi guys. Lately I have been dealing a bit with wxWidgets. wxWidgets is comparable to Microsoft's MFC, but it is platform independant and easier to develop (imo). I am really thinking of rewriting the VBA GUI to use wxWidgets, because I could make the whole code look cleaner and make it easier for new developers to add things. Moreover it should not be too hard to use the normal VBA emulation cores (GB/GBA), because they are coded GUI-independant. So, what do you think? For me it would be a great incentive to create something on my own, and besides, I could get deeper into platform-independant development. Afaik, VBA could then be easily ported to Mac, Linux and maybe even to embeded devices if the wxWidgets developers work on that.
 

·
VBA 2 developer
Joined
·
404 Posts
Discussion Starter · #71 ·
@Forgotten:
IMO, game compatibility goes first. We can not enjoy fast emulation if the game actually is not playable because of bugs.

Well, on the other hand, we can not play games at 50% speed, but I guess this is only a problem on older CPUs.
 

·
VBA 2 developer
Joined
·
404 Posts
Discussion Starter · #77 ·
New WIP

Since pokemonhacker seems to be offline for a while (does anyone know what's going on with him?), I changed my plans a bit. I will continue to release WIP versions until someone fixes the 1.8 core, because I do not want to release a buggy version ;)

Regarding the issue with new game shark codes:
I could have a look at adding the new code format, but only if someone can give me some informations about the new format.

Online cheat database: too much work (just for cheating o.o")

wxWidgets: I changed my opinion, it is better to get the MFC thing stable, then I will care about other platforms.

By the way, I am selling my second PC just to get money to buy me a new one (some people need cars, I need computers ;) ). The new thing will definitely use an AMD (anagram: MAD xD) Athlon 64 or Opteron with at least 1MB L2 Cache. Moreover it will have PCI-Express and be extremely silent. (Just what a developer needs ;) ). But don't worry, I won't ask for money here, although it would be a nice imagination.


And finaly, the files, a nice backup if my computer breaks occasionally (this word is as hard to spell as miscalleneous oO)

Code:
Change Log:

S1.7.7 WIP (Visual Studio 2005):
- Migrated project and code to Visual Studio 2005
    - needed to make some code stricter
    - native manifest integration
- Added speed configuration table
- Added flash size option to emu tab
- Fixed: Window size was reset after closing the options dialog
- Fixed: speedupToggle will now be saved
- Removed several setting menus
- Code cleanup
- Minor issues
The exe is built with SSE(1) support, so your CPU must support this, but about every CPU since about 1999 supports it. I will not lose a word about MMX ;)

Here's the All-In-One package: (1,77MB)
http://mitglied.lycos.de/spacy51/vbas/vba-s_2006_04_14.7z
 

·
VBA 2 developer
Joined
·
404 Posts
Discussion Starter · #81 ·
I really did not change any time-critical code. Maybe Microsoft's new compiler sucks even more than the preceding version.

*MeWantsAGoodIDEforGCCwithGPROF* :D
 
1 - 20 of 37 Posts
Status
Not open for further replies.
Top