View Full Version : VBA and hq3x/hq4x?
optimus$prime
April 10th, 2005, 02:16
hi there
first i'd like to say that vba is the best gb/gba emulator out there.
is it possible to include hq3x/hq4x texture filter for the next release?
_Chrono_
April 10th, 2005, 22:21
http://www.ngemu.com/forums/showthread.php?t=60948
we just might see it in the future :)
optimus$prime
April 13th, 2005, 02:07
http://www.ngemu.com/forums/showthread.php?t=60948
we just might see it in the future :)
wow very interesting
thx for info
optimus$prime
May 4th, 2005, 01:00
hmm
for the last weeks there was no reaction with vba dx9 :plain:
Spacy
May 7th, 2005, 23:42
http://www.ngemu.com/forums/showthread.php?t=60948
just have a look to be informed
ScottJC
May 8th, 2005, 02:49
That link was already on this thread and just as outdated as it was last time.
I tried to implement hq4x in the current source code, I failed but it was worth a shot.
Spacy
May 8th, 2005, 11:07
Sorry, it was late last night and my brother cut the internet connection right after I postet this, should have posted this after doing it first in the other forum, sorry, my mistake.
EDIT:
Maybe you should try adding HQ4X now ;)
optimus$prime
May 12th, 2005, 01:00
nice progress :bouncy:
keep it going!
Spacy
May 12th, 2005, 16:50
Thanks
optimus$prime
May 14th, 2005, 01:35
wow nice comparrison between simple3x and hq3x :happy:
hq4x working now?
could you post some screenshots from hq4x?
awesome work!!!
Spacy
May 14th, 2005, 17:01
Thanks.
I attached the following pictures:
hq2x.png
hq3x.png
hq4x.png
All are captured in WinGDI mode with 4X Size.
As you see, the image gets sharper, this makes the 800x600 resolutions a up look better than with the old filters.
ScottJC
May 15th, 2005, 09:10
You could've used a better example pic, that looks horrible. Plus if the filters are that slow on your system then they aren't much good, the Filter implementation of HQ4X in ZSnes is pretty much the best you will find I think, it's perfect 60/60 frames per second.
Spacy
May 15th, 2005, 15:28
Why should i ise another example pic? I want to show you real game images so that you don't expect mroe than it is in reality.
I know that this is slow, and I know that the only way to real speed up that thing is using the Assemblers sources, but I don't understand much assembler, moreover it would take months (for me) to add this in asm.
And remember that Z-SNES is on the one hand a SNES-Emu (SNES needs less CPU-Power to emulate than GBA) and is on the other hand completely written in Assembler. So maybe ZSNES' filters aren't much faster than my ones, but they only have more CPU-Power to work.
Using 1 skipped frame per second, the game is playable.
Because ngemu is halfway down at the moment, I'll post it here:
Released a WIP exe of my current progress.
HQ3X is working best at the moment. Test it with GDI, DirectDraw or Direct3D.
HQ4x is also working, but only with GDI and DirectDraw.
I tryed for hours to add 16bit support to hq3x, but as you'll see, there are some damn artifacts in it. I have to spend more time on this.
ScottJC
May 15th, 2005, 19:14
ZSnes's filters are also a lot smarter than the standard ones, they don't redraw parts of the screen that are unchanged from the last "filter". This increases HQ4x's performance by a staggering amount.
HQ4X is also used as an external filter in Kega Fusion, which barely uses any cpu power on my system either, the moment I start using HQ4X... massive slowdown, so it does matter how it is implemented.
I meant use a game that you can really see an improvement in, that demo looks absolutely appauling with those filters. Then again, it looked appauling to begin with!
I just tried your build hq3x runs perfectly fine, full speed with no frameskip (In GDI mode). Very nicely done.
Btw, Bog standard visualboyadvance never uses more than 40% of my cpu. (it says 20% but I know thats lying, Hyper Threading). That leaves a nasty 60% being sucked up by HQ3X and HQ4X.
Spacy
May 15th, 2005, 20:51
It's nice that it runs at full speed at your computer. Lol, maybe it's the difference between an Athlon XP 1800+ (which has about 1,5GHz) that I use at my Dev+Internet machine and a Pentium 4 with 3,2GHz. Mopreover I only use a Radeon 9000, but I think this is not very important.
First I'm going to implement the filters so that they run correctly, after that I will maybe add that speed optimization that only refilters certain areas, nice idea ;)
minkster
May 16th, 2005, 01:01
Wow I like hq4x it totally beats 2xsai by a long shot. Keep it up Spacy. But I did notice that metroid fusion goes blank in game all of a sudden, even if I change the filter to something else. Hmm...mabe I'lll hafta reinstall it. Well good luck on your implementations-minkster
Clements
May 16th, 2005, 10:54
Worked mostly fine for me. I did get odd video bugs in one game when the screen went black, may have been my fault though. The Yoshi game (whichever it is, don't recognise it) is not the best example to use, I tried Pokemon for it's simple graphics, and there was a nice improvement, same with Mario & Luigi.
I used 1280x1024, D3D, hq3x, bilinear filtering.
Spacy
May 16th, 2005, 15:37
I found the Yoshi demo somewhere on the net, think it was from Nintendo to show the abilities of the GBA, but you're right, this isn't the best game to show.
I now use Super Mario Advance 4 : Super Mario Brothers 3. This game looks really amazing with HQ4X. :party:
Have a look at the ngemu-Forums thread, i posted a screenshot and a new test-exe there.
Tell me for speed changes in it.
optimus$prime
May 16th, 2005, 18:50
congrats to the vbapre2r3!
although i found out that metroid-zero mission and iridion3d don't work correctly. in zero mission menues are working but in the game there are black screens. iridion3d stops at the beginning.
i hope you fix it because i need zero mission in hq4x :bouncy:
how about implementing advancemame scale3x or 4x filters?
in some games they look better then hqx filters
http://scale2x.sourceforge.net/
but in in most games hq is best :P
ScottJC
May 16th, 2005, 23:51
From first examination... HQ4x appears to be working roughly 5% (at most) faster, still a bit too slow even for my system, runs at 75%.
HQ3X appears to be running slower.
Spacy
May 17th, 2005, 12:10
Thanks for the link to Scale2/3/4x.
I'll have a look at it.
optimus$prime
May 17th, 2005, 17:21
Thanks for the link to Scale2/3/4x.
I'll have a look at it.
note that advancemame scale2x is already implemented
update: same black screen in metroid fusion :(
i think that it is a kind of bug from the vbadx9 and not the filter
same black screen with no filter
with original vba these games work
hope you can fix it
Spacy
May 17th, 2005, 21:46
If the bug was there in 1.8.0 beta, I can do nothing about it. If I did it wrong, then it shouldn't be hard to find.
BTW, the thing with the 16bit HQ filter is really annoying me, I just can't find that damn artifact thing. I think looked at the whole HQ3x source and changed and converted everything correctly from int to short, I took care for the colors and the interpolation but nevertheless there are artifacts in 16bit mode. I searched for over 2 hours.
Don't know what to do about that o.o"
optimus$prime
May 17th, 2005, 22:36
If the bug was there in 1.8.0 beta, I can do nothing about it. If I did it wrong, then it shouldn't be hard to find.
using vba 1.8.0 beta 2 there is no bug
i have just testet it
Spacy
May 18th, 2005, 13:43
I have the same bug, but I found a solution: Options>Video>DisableSFX
Seems like there's something wrong with the Alpha Channel, but I didn't change anything there so it isn't my fault. Maybe a bug of the latest CVS source...
optimus$prime
May 18th, 2005, 16:40
I have the same bug, but I found a solution: Options>Video>DisableSFX
it works in metroid fusion there are only some objects missing
but metroid zero mission is full of gfx-artifacts, unplayable
Spacy
May 18th, 2005, 22:30
Does anybody ever used the skinning function of VBA? Wouldn't it be better to remove it?
smcd
May 19th, 2005, 01:19
I find skins to be silly, though some people like them.
Spacy
May 20th, 2005, 17:05
I removed them from my build, just for fun ^_^
I only used that once for testing, moreover I don't know any skins for VBA and this safes some space. (4libs, 20 headers, some lines code in the emu source, about 2,2MB space saved for the source package).
At the moment I'm adding GDI+ support just to learn it a bit. It's already working. I'm having now weekend and next week a long weekend. Germany rules with it's much public holidays ^^
Clements
May 20th, 2005, 18:17
Would you be interested in merging some of kode54's changes to your build? You can find a diff patch to the current source in the link below, so hopefully you can drop the code in without too much difficulty, and credit kode54 of course. Your graphical changes will complement some of his sound changes well, and the LCD filter makes things look much better IMO.
http://board.zsnes.com/phpBB2/viewtopic.php?t=2248&start=0
Just a thought, I love what you are achieving here.
optimus$prime
May 20th, 2005, 22:32
i like the pcm interpolation
it's very useful to get a cleaner sound...
Spacy
May 21st, 2005, 12:58
Thanks. I'll look at his source. Because I base3d my changes on a really buggy source, I'm going to search another base, I don't like Buggy things. I'm going to release my 3rd release in ngemu in some mins.
optimus$prime
June 5th, 2005, 12:14
wow black screens are gone :bouncy: ī
http://www.ngemu.com/forums/showthread.php?t=60948&page=3&pp=20
thx for this new release
now i can play zero mission in hq4x :happy:
which renderer mode would you prefer?
i noticed that colors/sharpness looking best in gdi mode
but which mode is the fastetst?
have you tried implementing advmame scale3x or 4x?
Spacy
June 10th, 2005, 21:03
If I read correctly, Scale4x is just 2 times Scale2x, so this shoudl be easy. I'm having a breake at the moment, but I look forward to continue in the summer holidays :D
Yeah, i finally got the black screen bug. It was just a error of too much optimization in the compiler.
suanyuan
August 13th, 2005, 19:24
I modified VBA172 to support Kega Fusion filter plugin system, with the help of filter plugins,
now VBA172_smooth_V5 support support hq3x, hq4x, lq3x, lq4x, Scale3x, Scale4x.
In my computer of P4 2.53 G, VBA172_smooth_V5 can run F-ZERO with hq3x filter almos 95% CPU speed
with both "synchronize" and "auto skip frame" turn on. Alough I can't tell the differences between outputs of hq2x and hq3x.
You can download the binary from:
http://www.ngemu.com/forums/showthread.php?t=63952
Spacy
September 4th, 2005, 14:48
Just a quick note:
New releases get posted here:
http://www.ngemu.com/forums/showthread.php?p=885886
Sorry that there is not much new stuff, but it is very hard to add features.
Shin_Gouki
September 4th, 2005, 18:51
nah donīt push yourself when it comes to coding its :"better save than sorry" which means its not important to add many features fast and make lot of design and implementation mistakes, as to add carefull and thoughtfull features which enrich the application while mainting stable execution.
Ah yes and dont forget u dont get money ( take ur time ^^) and ur working alone so just enjoy ur work!
wbr Shin Gouki
suanyuan
September 4th, 2005, 21:59
Just a quick note:
New releases get posted here:
http://www.ngemu.com/forums/showthread.php?p=885886
Sorry that there isn't mkuch new stuff, but it's very hard to add features.
Hi Spacy,
Each time I always can learn something from your release even find some new idea from your change list.
I think you have a lot of progress in D3D driver and user interface enhance.
加油 (Chinese), and keep going be happy.
:happy:
WhiteX
September 5th, 2005, 13:56
I tried to use the 4x filter but my screen got shrinked to the 1x size and the rest was trash.
Spacy
October 19th, 2005, 21:27
This is, because it is not implemented yet. I put more importance on other things, because HQ4x would be much too slow.
At the moment, I am recoding the render device interface to enable better fullscreen support, better filter optimization and to support my new written pixel filter interface, which is class based and so easier to handle for me - and hopefully others.
Moreover, my pixel filter interface combines pixel filter functions AND graphics cards Pixel Shader routines, which I will try to add as soon as my 2 new interfaces and devices work.
UPDATE: I'll drop recoding the display interface at the moment and only stick to the new pixel filter interface.
WhiteX
October 20th, 2005, 05:35
Ok!
Spacy
November 2nd, 2005, 17:08
I wish I would have much more spare time...
Since I don't want to use all my free time for VBA coding, it really lasts long till I can show results.
Please keep this in mind everybody.
Moreover, I'm no professional developer (I'm only 16 years old ;) ), but I give it all I've got.
WhiteX
November 3rd, 2005, 01:10
I wish I would have much more spare time...
Since I don't want to use all my free time for VBA coding, it really lasts long till I can show results.
Please keep this in mind everybody.
Moreover, I'm no professional developer (I'm only 16 years old ;) ), but I give it all I've got.
go live your life, kid, no sweat, you already did great so far, if you are in the mood, code a little if you are not, go back to chase girls!:P
Spacy
January 22nd, 2006, 14:39
Hi @all
Since the ngEmu board is down ("expired") I will post my new release here :p
Lately, I have been in the "mood" for coding, so I continued with VBA, anyway I dumped some crazy changes I made a while ago, because I totaly messes up the app back then xD
Now to the interesting part. pokemonhacker made some changes to the CVS code, and these come ON TOP of beta 3, so it is newer than that. I described those changes in the change log.
Remeber, this is a WIP (Work-In-Progress) Version, not a a stable one. Tell me, if you find some easy bugs in the application (that do not cover emulation itself xD)
So now here is the change log, everything between << >> has changed from the last WIP version.
S1.7.7:
- 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 the huge core changes)
- Fixed "Always creating empty registry key"
- Removed unused Motion Blur Magnification Filter source file
- Removed unused Interlacing Interframe Blending
- Removed video mode confirmation Dialog
- Removed DirectDraw and OpenGL (Use Direct3D instead)
- VSync and TripleBuffering is applied to Direct3D
- Optimized Direct3D code
- Thanks to the new core, full optimization works now
- Reworked directory select dialog (Using Hans Dietrich's XBrowseForFolder
- Reworked pixel filter interface for better 3x/4x and Pixel Shader integration
<<
- Switching the menu bar does not take ages in D3D full screen
- Applied official CVS changes from January 19, 2006
- - GB: fixed initial values for registers (tested on hardware)
- - GB: added bugs on purpose that exist in hardware
- - GB: added 'genericflashcard' option
- - GB: added gbDrawLine()
- - GB: fixed GB cheats compare code
- - miscellaneous fixes
- Code cleanup
- Updated Minizip component to version 1.01e
- New color themes only get applied if not in GBC/SGB mode
>>
Finally, the files:
Additional DirectX Runtime DLL (copy into VBA folder if needed)
http://www.magicstone.de/spacy/VBA/WIP20062101/d3dx9_28.7z
Executable
http://www.magicstone.de/spacy/VBA/WIP20062101/VBAS_BIN_WIP20062101.7z
Complete Source Code
http://www.magicstone.de/spacy/VBA/WIP20062101/VBAS_SRC_WIP20062101.7z
Best things in life are for free ;)
Spacy
January 22nd, 2006, 17:20
Hi, I have a little favor to ask.
I want to include kode54's changes form the following site:
http://board.zsnes.com/phpBB2/viewtopic.php?t=2248&start=0
But I just can't apply his patch.
So if anyone likes to get some credits into VBA :drool: , just apply that patch to the original 1.7.2 VBA source and send me the whole package to Spacy51 ath gmx.de
I would really appreciate this.
Thanks.
RockmanForte
January 24th, 2006, 03:11
Good job, but is it worth ? I am into increase the games since this is amaze gba emu. ;)
WhiteX
January 24th, 2006, 12:08
What is your point, dude?
Spacy
January 24th, 2006, 18:40
I still need kode54's package.
Please, anybody!
Agozer
January 24th, 2006, 21:45
I still need kode54's package.
Please, anybody!
Aerdan from the Zboard was kind enough to point out that you need to get Cygwin and install the 'patch' utility.
...
Although kode said something along the lines that his version is against a particular CVS version and not 1.7.2 or any other build for that matter. I don't know if that makes a difference though.
smcd
January 24th, 2006, 22:21
I still need kode54's package.
Please, anybody!
If you can't/don't get cygwin or whatever I'll try and do it tomorrow at work. Are you sure it's the 1.7.2 sources needed for the diff patch?
Spacy
January 25th, 2006, 11:54
GnuWin sucked, the exe didn't react. I didn't tried CygWin, but I used a Linux LiveDVD (Knoppix). I used "patch -p < vba.patch" in the origninal 1.7.2 source folder. I even tried numbers behind -p, but it always complains about not finding the source files.
It would be really nice if you could do this for me.
Please try to use it with the 1.7.2 build, despite I think the patch was built against a 1.8.0 beta version, because there aren't any official sources of the betas, only CVS ones.
EDIT:
I also tried it now with CygWin, but still I get error messages, although some files actually got patched. Somehow I have the feeling that kode54's patch has errors. Has anyone got kode64's ICQ number or his e-mail adress?
ShadowDamien
February 7th, 2006, 18:45
I am completely lost in what half of this stuff is but if you guys make the VBA better, I like alot.
One other thing, I got a slower compy due to a virus I just got rid of and I haven't got the money to fix it. Whenever I put on sound, the thing skips about every 20 secs. Any way to fix??? I don't know what version I have and this is on a compy with no internet!!!! >.<
Spacy
February 7th, 2006, 19:33
Try to close all background applications (system monitors, virus scanners, etc.)
Maybe this helps. If it does, try to figure out what software exactly causes the skips.
ShadowDamien
February 8th, 2006, 20:11
Try to close all background applications (system monitors, virus scanners, etc.)
Maybe this helps. If it does, try to figure out what software exactly causes the skips.
Itwas my spyware scans... thanks!!
M[u]ddy
March 1st, 2006, 17:41
Here is a small comparison of several VBA-Mods(speed without frameskip):
VBA S:
hq3x(40%):
http://img433.imageshack.us/img433/9862/vbas3x8ue.jpg
hq4x(30%):
http://img334.imageshack.us/img334/8374/vbas4x7ke.jpg
Smooth 6.5:
hq3x(70%):
http://img472.imageshack.us/img472/1391/smooth3x3rg.jpg
hq4x(45%):
http://img348.imageshack.us/img348/8311/smooth4x1nw.jpg
Re-Recording:
hq3x(75%):
http://img46.imageshack.us/img46/5963/rr3x5lg.jpg
hq3xs(80%):
http://img416.imageshack.us/img416/5731/rr3xs7ml.jpg
To sum up:
VBA S is very slow and some areas are done badly(take a clother look at the desks)
Smooth is faster and makes the bad areas right but therefore the right areas wrong( for example the floor).
Re-Recording is the fastest but has no hq4x and hq3x look same as in VBA S.
Therefore is has hq3xS, which is even faster and makes the desks like in Smooth and the floor like in VBA S.
suanyuan
March 18th, 2006, 20:18
Why not try lastest version of VBA smooth? v4.5 is quite old, and since v5.0 VBA smooth using filter plugin system that can run much better than before.
Agozer
March 18th, 2006, 20:38
I use kode54's VBA build. It's awesome.
M[u]ddy
March 18th, 2006, 21:33
Why not try lastest version of VBA smooth? v4.5 is quite old, and since v5.0 VBA smooth using filter plugin system that can run much better than before.
Oooops.
It's just a typing error:P
Off course i used 6.5.
Spacy
May 4th, 2006, 22:50
HiHo.
I will abandon VBA-S for a while (forever?) since I decided to take on the official build. At the moment, I strongly reworked the graphcis output system, leaving the pixel fitlers untouched. I think suanyuan's idea of using Kega Fusion's pixel filtering system is much better, since the filters already seem to be optimized and tested thoroughfuly.
Powered by vBulletin® Version 4.1.10 Copyright © 2012 vBulletin Solutions, Inc. All rights reserved.