+stephena Posted June 9, 2009 Share Posted June 9, 2009 OK, I promised that the next major release would be 3.0, but there's a few things in the pipeline that I wanted to push out sooner. So here is 2.8 Major changes in this release are the CRT Simulation effects mentioned in several other threads. Also, there are some nice debugger improvements and bugfixes, as follows: * Added CRT simulation effects as described in the AtariAge posting 'CRT emulation for Stella'. For now, this requires OpenGL 2.0 or greater with support for GLSL (GL Shading Language). This code will be expanded on and optimized in future releases. * Adding editing of extended RAM in the debugger RAM UI. The RAM 'spreadsheet' now shows the entire address space of RAM in the system, in 128 byte increments. The first bank shown is zero-page, with the others following in consecutive order. The UI takes care of read vs. write port differences, so you don't have to worry about the offsets. For now, all SuperChip based ROMs (EFSC, F4SC, F6SC, F8SC) as well as 3E, CV, E7 and FASC are supported. * All ROMs which include SC extended RAM will now have memory erased if you attempt to read from the write port. Related to this, entering/exiting the debugger will no longer erase the extended RAM. * Patching of ROM for bankswitch types 0840, SB, UA and X07 is now implemented, but hasn't been extensively tested. * Visual improvements to the CPU register UI in the debugger; the SP/A/X/Y registers now have separate decimal and binary views. * Tweaked paddle control so that all positions are reachable in game 4 of Activision Casino in both NTSC and PAL versions. * SuperCharger/AR ROMs now start with a random value in the CPU accumulator. This should fix issues with Dragonstomper always starting in exactly the same state. * Auto-detection for '3F' bankswitching improved; several ROMs previously detected as 'F8' now work correctly. * Updated internal ROM properties database to ROM-Hunter version 5 (thanks go to RomHunter for his tireless research in this area). * Added '-exitlauncher' commandline argument and associated UI item, to specify what happens when you exit a ROM. Normally, exiting a ROM brings up the ROM launcher, but this can be disabled for those using an external frontend (in which case exiting a ROM also exits from Stella). * Re-added '-fastscbios' commandline argument, and added an associated UI item. When enabled, the SuperCharger load bars are now completely removed (and not just sped up as in previous releases). * The '-listrominfo' commandline argument now shows all ROM information built in to the internal database, taking into account any information in 'personal' stella.pro files. As usual, the latest release of Stella can be downloaded here. Please report all bugs in this thread or directly by PM. I just wanted to add that this is the first version of the CRT simulation effects, and as such, the code hasn't received a wide assortment of testing. Please provide constructive criticism and feedback for this. As well, I'm still working on the KrokCart cross-platform app, and will hopefully have the first version available soon. After that, I may look for someone to take over as maintainer for the KrokCom software. Finally, now that the big stuff is out of the way in this release, I can finally move to working on 3.0, which will include the updated TIA emulation and built-in disassembler. I expect the next release to be done before the end of this summer. Quote Link to comment Share on other sites More sharing options...
Wickeycolumbus Posted June 9, 2009 Share Posted June 9, 2009 The CRT effect is awesome Quote Link to comment Share on other sites More sharing options...
Aegis Posted June 10, 2009 Share Posted June 10, 2009 Firstly - great job! Congratulations to stephana and all involved with this great new feature! OK - down to the critique :^) I love the pixel texturing effect (particularly the 'staggered' effect - looks just like an old TV I used to use my 2600 on) however, the pixel pattern seems to get corrupted when using 'GL FS Stretch' (I'm running Stella at 1920 x 1200 and there's some strange bars showing up in the pixel pattern). TV Color Bleed is nice but the medium setting feels a little too low and the high setting too high (if you get my meaning). Likewise, TV Image Noise feels like the 'low' setting isn't low enough - could do with it being a little more subtle. What does TV Phosphor Burn-off do? Haven't noticed any real difference with it either on or off... Lastly, two things - the gamma changes quite drastically using these new filters - it'd be nice if that were controllable. Also, the 'glow' effect is a little strong for my taste - it'd be nice if this was adjustable too. OK - one last one - the glow seems quite low-res as well - looks kinda blocky. This is off to a great start though - really looking forward to seeing how it develops! Quote Link to comment Share on other sites More sharing options...
+Nathan Strum Posted June 10, 2009 Share Posted June 10, 2009 Fantastic! The CRT effects are very cool - and useful. By disabling the normal phosphor effect, then enabling TV Color Bleed (low) and Phosphor Burn-off, you get a really good representation of real-world flicker. For some examples check Stellar Track, Lady Bug, Pac-Man, Gingerbread Man and the title screen for Juno First (which even shows the vertical banding in the title). Nicely done! Quote Link to comment Share on other sites More sharing options...
Kr0tki Posted June 10, 2009 Share Posted June 10, 2009 I like the TV filters a lot. My 2 cents: 1. Color texture looks good, but I think the Color bleeding and Image noise effects should be scaled together with the screen resolution. For example, when I set the screen to 1024x768, the Color bleeding is far less noticeable than in the standard 640x480 resolution. 2. Color bleeding is when chrominance signal becomes shifted with relation to luminance signal (due to the former having lower resolution than the latter, or due to a TV set's deficiency). What yuou called "color bleeding" is in fact a kind of "glow" effect, which is an entirely different thing. Quote Link to comment Share on other sites More sharing options...
JL Posted June 10, 2009 Share Posted June 10, 2009 Stephana, Many Thanks especially for the Arcadia/Starpath fix. I can't wait to test it out Quote Link to comment Share on other sites More sharing options...
mos6507 Posted June 10, 2009 Share Posted June 10, 2009 If I load stella and tell it to use OpenGL then it refuses to load if I close it and reopen it. I guess this is because I don't have OpenGL installed? Can't it just fall back or something? Quote Link to comment Share on other sites More sharing options...
Rom Hunter Posted June 10, 2009 Share Posted June 10, 2009 (edited) Same problem here. I fiddled with the OpnGL option and now it doesn't open anymore. There's just a small flash showing the little Stella Fuji at the bottom of my screen for a split second. Edited June 10, 2009 by Rom Hunter Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted June 10, 2009 Share Posted June 10, 2009 I have switched settings to OpenGL now and added "-gl_texrect 0" to the commandline, but still the TV effects options are disabled. Any idea? Quote Link to comment Share on other sites More sharing options...
+stephena Posted June 10, 2009 Author Share Posted June 10, 2009 If you don't have OpenGL support, or (more likely) the drivers say you have OpenGL support when you really don't, then Stella will fail to start the next time. For now, you'll have to edit the config file and manually delete the line 'video=gl'. The problem with adding a 'fallback to software mode' setting is the latter case, where your operating system reports to have OpenGL when it really doesn't. From the Stella POV, it can't know that OpenGL isn't working when the OS specifically said it was. Also, the requirements are OpenGL 2.0 or greater with GLSL, and 'gl_texrect' must be turned off. If either of these isn't met, the UI for TV effects will be disabled, and you won't be able to use them. Furthermore, I suggest downloading the most recent drivers for your video card, which should include OpenGL drivers. Worst case scenario is you have to manually edit the config file again and delete the aforementioned line. As per the documentation, the config file is $HOME/.stella/stellarc for Linux, and %My Documents%\Stella\stella.ini for Windows (OSX probably won't have any issues, as it supports OpenGL out of the box). Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted June 10, 2009 Share Posted June 10, 2009 (edited) Also, the requirements are OpenGL 2.0 or greater with GLSL, and 'gl_texrect' must be turned off. If either of these isn't met, the UI for TV effects will be disabled, and you won't be able to use them. Furthermore, I suggest downloading the most recent drivers for your video card, which should include OpenGL drivers. I go the latest drivers for my rather old Ati Radeon 9200. How do I find out which OpenGL I have and if I have GLSL? Does Stella have some debug output? EDIT: It seems that the Radeon 9200 doesn't support GLSL in hardware. stdout.txt: Video rendering: OpenGL mode Vendor: ATI Technologies Inc. Renderer: RADEON 9250/9200 Series DDR x86/MMX/3DNow!/SSE Version: 1.3.1072 WinXP Release Color: 32 bit, 8-8-8-8 Filter: GL_NEAREST Extensions: None Joystick devices found: No joysticks present. Edited June 10, 2009 by Thomas Jentzsch Quote Link to comment Share on other sites More sharing options...
+stephena Posted June 10, 2009 Author Share Posted June 10, 2009 Also, the requirements are OpenGL 2.0 or greater with GLSL, and 'gl_texrect' must be turned off. If either of these isn't met, the UI for TV effects will be disabled, and you won't be able to use them. Furthermore, I suggest downloading the most recent drivers for your video card, which should include OpenGL drivers. I go the latest drivers for my rather old Ati Radeon 9200. How do I find out which OpenGL I have and if I have GLSL? Does Stella have some debug output? If you add '-showinfo 1' to the commandline when you launch it, there should be files generated named stderr.txt and stdout.txt. The info will be in one of those. I think the main requirement is OpenGL 2.0+. The GLSL stuff comes by default in versions >= 2.0. Quote Link to comment Share on other sites More sharing options...
AtariNerd Posted June 10, 2009 Share Posted June 10, 2009 Silly me, Looks most excellent so far. Thanks for the continued efforts at emulating our old beloved machines. They now truly are immortal. (Not that the originals cant take a lickin' , mind) Quote Link to comment Share on other sites More sharing options...
Rom Hunter Posted June 10, 2009 Share Posted June 10, 2009 Ok, fixed it. Where do I download the latest OpenGl version? It seems that most links lead to the old 1.1 version. Quote Link to comment Share on other sites More sharing options...
user42 Posted June 11, 2009 Share Posted June 11, 2009 Why does Stella need to put a folder in "My Documents"? It really bothers me... At least with the older versions we could use "disable_profiles.txt" but that doesn't work anymore. Anyways, Thanks for all the hard work you put into this. Once I figure out OpenGl, I look forward to seeing the CRT effects. Quote Link to comment Share on other sites More sharing options...
Kr0tki Posted June 11, 2009 Share Posted June 11, 2009 (edited) Ok, fixed it. Where do I download the latest OpenGl version? It seems that most links lead to the old 1.1 version. I think there's some misunderstanding. You do not download OpenGL; it's not a program, it's a specification of some standard. You can however download drivers for your graphics card, that support OpenGL specification. However if your graphic card's manufacturer says that your card supports only OpenGL 1.1 and not 2.0, and releases drivers that only support 1.1, you're simply out of luck. Edited June 11, 2009 by Kr0tki Quote Link to comment Share on other sites More sharing options...
+stephena Posted June 11, 2009 Author Share Posted June 11, 2009 Why does Stella need to put a folder in "My Documents"? It really bothers me... At least with the older versions we could use "disable_profiles.txt" but that doesn't work anymore. Anyways, Thanks for all the hard work you put into this. Once I figure out OpenGl, I look forward to seeing the CRT effects. There is a new option to specify the base directory for storing all Stella-related info (similar to how disable_profiles.txt worked). I'll refer you to the manual to see exactly how to do it. As for why it's done, Stella config files have to go somewhere. And that 'somewhere' has to be a place that the user can see, since they may have to manually edit config files, or view saved snapshots, etc. This isn't a problem in Linux or OSX, since they have well-defined places to put user data; $HOME/.stella. For most of its history, Windows hasn't had such a place, no doubt a relic of its single-user origins. So most people simply run as Administrator, placing their user data directly with the applications, and having it spread all over the filesystem. And running as Admin all the time is probably the number one reason why Windows can be so virus-ridden. Anyway, sorry if this comes off as a rant, but I'm trying to follow the proper guidelines (laid down by Microsoft only recently, but on other systems for years) that user data shouldn't be mixed with application data, and you shouldn't need to run as Administrator to properly use Windows. The amount of complaints from Windows users convinced me to add functionality to override this, but I strongly recommend that you do not override it. You really shouldn't be running as Admin. Quote Link to comment Share on other sites More sharing options...
+stephena Posted June 11, 2009 Author Share Posted June 11, 2009 Ok, fixed it. Where do I download the latest OpenGl version? It seems that most links lead to the old 1.1 version. I think there's some misunderstanding. You do not download OpenGL; it's not a program, it's a specification of some standard. You can however download drivers for your graphics card, that support OpenGL specification. However if your graphic card's manufacturer says that your card supports only OpenGL 1.1 and not 2.0, and releases drivers that only support 1.1, you're simply out of luck. Yes, this basically sums everything up. Go to webpage of the manufacturer of your video card (ATI, Intel, Nvidia, etc) and download/install the most recent drivers available. If it still doesn't work, then your card doesn't support GLSL, and you won't be able to use the new TV effects. Quote Link to comment Share on other sites More sharing options...
user42 Posted June 11, 2009 Share Posted June 11, 2009 Why does Stella need to put a folder in "My Documents"? It really bothers me... At least with the older versions we could use "disable_profiles.txt" but that doesn't work anymore. Anyways, Thanks for all the hard work you put into this. Once I figure out OpenGl, I look forward to seeing the CRT effects. There is a new option to specify the base directory for storing all Stella-related info (similar to how disable_profiles.txt worked). I'll refer you to the manual to see exactly how to do it. As for why it's done, Stella config files have to go somewhere. And that 'somewhere' has to be a place that the user can see, since they may have to manually edit config files, or view saved snapshots, etc. This isn't a problem in Linux or OSX, since they have well-defined places to put user data; $HOME/.stella. For most of its history, Windows hasn't had such a place, no doubt a relic of its single-user origins. So most people simply run as Administrator, placing their user data directly with the applications, and having it spread all over the filesystem. And running as Admin all the time is probably the number one reason why Windows can be so virus-ridden. Anyway, sorry if this comes off as a rant, but I'm trying to follow the proper guidelines (laid down by Microsoft only recently, but on other systems for years) that user data shouldn't be mixed with application data, and you shouldn't need to run as Administrator to properly use Windows. The amount of complaints from Windows users convinced me to add functionality to override this, but I strongly recommend that you do not override it. You really shouldn't be running as Admin. Thanks for the reply. I will be checking out the manual. And don't worry, I didn't see a rant, you just stated your case. In my opinion, I use "My Documents" as a place for my documents (my personal files) it is not a "Random Program Crap" file. The funny thing is I left the "Documents and Settings" file (that comes with XP) and made another "My Documents" because I hated XP putting stuff into it. But a few programs (Acrobat, Stella, DVDfab,...) try to use my new "My Documents" anyways..... Thanks again for everything. Quote Link to comment Share on other sites More sharing options...
Rom Hunter Posted June 11, 2009 Share Posted June 11, 2009 (edited) Ok, fixed it. Where do I download the latest OpenGl version? It seems that most links lead to the old 1.1 version. I think there's some misunderstanding. You do not download OpenGL; it's not a program, it's a specification of some standard. You can however download drivers for your graphics card, that support OpenGL specification. However if your graphic card's manufacturer says that your card supports only OpenGL 1.1 and not 2.0, and releases drivers that only support 1.1, you're simply out of luck. Yes, this basically sums everything up. Go to webpage of the manufacturer of your video card (ATI, Intel, Nvidia, etc) and download/install the most recent drivers available. If it still doesn't work, then your card doesn't support GLSL, and you won't be able to use the new TV effects. Ok, I understand now. My computer uses ATI's Radeon X800 SE, which should support OpenGL 2.0. Edited June 11, 2009 by Rom Hunter Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted June 11, 2009 Share Posted June 11, 2009 My computer uses ATI's Radeon X800 SE, which should support OpenGL 2.0. Yup, everything starting from the Radeon 9500 supports OpenGL 2.0. Quote Link to comment Share on other sites More sharing options...
Omegamatrix Posted June 11, 2009 Share Posted June 11, 2009 It seems that the Radeon 9200 doesn't support GLSL in hardware. Yeah, I'm in the same boat Thomas. I got an old Radeon 9200SE. @Stephena, I really love what you did with the debugger. I fired up Dig Dug, scrolled down the extended ram and there it was. I also did find that search function. Never knew it was there before, and actually I was looking for it in the prompt tab. Would you be able to make the prompt tab not case sensitive? Also I found that easy to use "fill to scanline" breakpoint the other day, but I don't seem able to disable it. I read you have to do that through the prompt tab, but when I type "delbreakif 0" nothing happens. I also tried entering the cbp value "delbreakif _scanline==#157" and that didn't work either. Quote Link to comment Share on other sites More sharing options...
+stephena Posted June 11, 2009 Author Share Posted June 11, 2009 @Stephena, I really love what you did with the debugger. I fired up Dig Dug, scrolled down the extended ram and there it was. I also did find that search function. Never knew it was there before, and actually I was looking for it in the prompt tab. Yes, this was something I planned for quite some time, but never got around to it. I was fixing some other extended RAM bugs reported in another thread, and I figured I may as well complete the extended RAM debugger stuff entirely. Currently unsupported are the AR, DPC and 4A50 bankswitching schemes. Perhaps in the next release ... Would you be able to make the prompt tab not case sensitive? Also I found that easy to use "fill to scanline" breakpoint the other day, but I don't seem able to disable it. I read you have to do that through the prompt tab, but when I type "delbreakif 0" nothing happens. I also tried entering the cbp value "delbreakif _scanline==#157" and that didn't work either. I'll consider the case-sensitive thing, but I guess my UNIX/Linux preferences are showing through again (all commandline stuff in Linux and OSX is case-sensitive). As for the conditional breaks, this is an area that could use improvement; it's on my internal TODO list to add a UI for adding/removing breakpoints, so that you don't have to use the prompt if you don't want to. Currently, you add a scanline BP as you've done, or with the right mouse button on the TIA display in the debugger. The command 'listbreaks' will show which are currently active, and 'delbreakif X' (where X is a number shown in 'listbreaks') will remove them. Basically, what I'll be adding in a future release is a point-n-click of doing what you currently have to type out. Quote Link to comment Share on other sites More sharing options...
Omegamatrix Posted June 11, 2009 Share Posted June 11, 2009 (edited) I'll consider the case-sensitive thing, but I guess my UNIX/Linux preferences are showing through again (all commandline stuff in Linux and OSX is case-sensitive). That's be great. This always seems to bite me when I'm flipping back and forth making a .cfg file for Distella. As for the conditional breaks, this is an area that could use improvement; it's on my internal TODO list to add a UI for adding/removing breakpoints, so that you don't have to use the prompt if you don't want to. Currently, you add a scanline BP as you've done, or with the right mouse button on the TIA display in the debugger. The command 'listbreaks' will show which are currently active, and 'delbreakif X' (where X is a number shown in 'listbreaks') will remove them. Basically, what I'll be adding in a future release is a point-n-click of doing what you currently have to type out. This sounds sweet, and much easier to use. I just used list breaks, and the conditional BP was there as 00. However it still won't let undo it with delbreakif X. delbreakif X works for me with the breakifs I type in the prompt, but doesn't seem to work for this fill to scanline CBP. EDIT: now it seems to be working??? Maybe I was typing something wrong. Also good job on showing the values in decimal and binary. Edited June 11, 2009 by Omegamatrix Quote Link to comment Share on other sites More sharing options...
mangamuscle Posted June 11, 2009 Share Posted June 11, 2009 My nvidia card (with nvidia drivers) has OpenGL < 2.0 but that was not a problem with Stella 2.7.7, I could enable the OpenGL renderer in the UI no problem. Now with version 2.8 every time I enable "opengl" instead of "software" I get an error when I reopen stella, even tough I have not enabled the new TV filters (to be honest, I am not interested, the sharper the picture the better IMO) and gl_texrect = false was set from the start when the config file is created. I think it is unfair to require all users to have OpenGL 2.0 or higher, why not simply disable in the UI those features that require it? I get the following error when opening stella with video = gl: ERROR: Couldn't initialize video subsystem ERROR: Couldn't create launcher I downloaded the tar file and compiled (gcc 4.2.2) both 2.7.7 and 2.8. As a side comment, would't it be more appropriate instead of saving the config files in "MyDocuments" to save them in %USER%\AppData\Local\Stella ? Just a thought. Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.