Jump to content


+AtariAge Subscriber
  • Content Count

  • Joined

  • Last visited

  • Days Won


stephena last won the day on April 7 2019

stephena had the most liked content!

Community Reputation

2,173 Excellent


About stephena

  • Rank
    River Patroller
  • Birthday 02/02/1974

Contact / Social Media

Profile Information

  • Custom Status
    Stella maintainer
  • Gender
  • Location
    Newfoundland, Canada
  • Interests
    Computer Programming, Emulation of old/ancient systems

Recent Profile Visitors

34,909 profile views
  1. The plan is that this will be true for the RetroArch port too, although there may be a little lag due to their release dates being difference from ours. But when we do a new release, at least it will work for Linux/MacOS/Windows and R77/RetroArch. At least that's the plan, as Thomas said.
  2. If you go to the download page link, there's an R77 version too. Going forward, the R77 releases are synced with the main Stella releases.
  3. Yep, and it may even stay that way for the foreseeable future. We just can't test or guarantee it.
  4. It shouldn't be, as what's talked about above is an issue with MacOS basically discontinuing support for OpenGL over the past few years, and not fixing bugs. Windows uses Direct3D by default, and unless you have a good reason to use something else, Direct3D works best. EDIT: To be clear, 'vsync broken in OpenGL' applies to MacOS only. It should be working in Windows, and most definitely works in Linux.
  5. I'm pretty sure it's just that the 'configure' script is not properly detecting it's being run on a Mac, and not compiling Mac-specific classes. We've encountered this before, and I don't think it's a big deal to fix it. It's just that up to this point, nobody has used the UNIX build in MacOS mode very much, so we're running into some corner cases.
  6. The problem is, the Mac-specific code works fine as-is. It seems like the UNIX build is compiling `SerialPortUNIX` instead of `SerialPortMACOS`. And as such, this is a build issue. I want to keep the classes separate for now, since eventually we may add code that is system-specific, and I want to avoid using ifdefs everywhere.
  7. It's very odd that this is the case. Going forward, we would want to have the UNIX and Xcode builds behaving the same, if for no other reason than to prevent 'bug reports' like this.
  8. We've borrowed code from MAME before, so that shouldn't be a problem.
  9. Pretty sure this is due to: * Added high quality scaling. * Made scanlines better aligned to scaling. Two small points in the bullet list, but actually quite a bit of work behind the scenes. Good to see that it's being noticed. Also, we moved to Metal from OpenGL for the Mac renderer, so that should help too.
  10. I can check with the released binary later today, but as I haven't changed anything on my end, and it always worked before this, I don't know what it could be. I do know that if you copy 'Stella.app' with a normal cp command, sometimes the permissions are screwed up. This is a MacOS thing; there's nothing I can do about it on my end. And if you copy it outside of a Mac (like in Linux or Windows), similar things may happen.
  11. stephena


    This is the Windows serial code from Stella: if(!myHandle) { myHandle = CreateFile(device.c_str(), GENERIC_READ|GENERIC_WRITE, 0, NULL, OPEN_EXISTING, 0, NULL); if(myHandle) { DCB dcb; FillMemory(&dcb, sizeof(dcb), 0); dcb.DCBlength = sizeof(dcb); if(!BuildCommDCB("19200,n,8,1", &dcb)) { CloseHandle(myHandle); myHandle = 0; return false; } memset(&dcb, 0, sizeof(DCB)); dcb.BaudRate = CBR_19200; dcb.ByteSize = 8; dcb.Parity = NOPARITY; dcb.StopBits = ONESTOPBIT; SetCommState(myHandle, &dcb); } else return false; } return true; It's the same in Linux/macOS. So you need to set 19200 baud, 8N1.
  12. OK, it's finally here, the "Corona" edition of Stella, to keep you all busy during your extended isolation First of all, this release was over 1 year in the making, and I want to single out the other members of the team that have put in more work than me: @DirtyHairy and @Thomas Jentzsch. Due to some personal, real-life issues, I wasn't able to dedicate as much time to this release as I'd have liked, and that's partly the reason why it's so late. Hopefully this can improve for the future. Now, where to begin? There are major improvements all across the board here, with some subsystems being completely rewritten. So here's the changelog: * IMPORTANT NOTES: - Because of major event remapping changes, all remappings will be reset to defaults; if you had custom mappings, they will need to be re-entered again. - Because of major internal changes, all state files are now invalid. - Support for Windows XP has been discontinued as of this version. WinXP is now completely out of support from Microsoft, so we are doing the same. * Major improvements to display mode handling in NTSC vs. PAL. The window is now the same size for both modes, and scaling is applied to simulate the height of scanlines (in PAL mode, there are more scanlines and hence each is narrower). This more properly emulates how the display would look on a real TV. * Removed the 'Display_Height' property, changing it to 'Display_VCenter'. This new feature, along with the display mode changes above, almost completely eliminate having to manually tweak each ROM so that it will not have part of the image cut off. * Removed the 'Display_YStart' property and all automatic detection of ystart. It caused problems on some ROMs, and was not the way a real console would work anyway. Related to this, ROMs now load much faster. * Major improvements to event remapping: - Allow mapping of modifier-key and button-direction combinations - Physical controllers can map the same action to different events on different virtual controllers - Many more events can be remapped - Events can be filtered by type in UI * Paths have been simplified: - The following file/directory locations are no longer configurable (statedir, nvramdir, cheatfile, palettefile, propsfile); they are now all under the base directory - Removed cfgdir; Distella config files are now placed with their associated ROMs - Added 'basedir' commandline argument, which allows to change the base directory where almost all config-related items are stored; related to this, discontinued the 'basedir.txt' functionality - Added 'baseinappdir' commandline argument, which sets the base directory to the application folder (Windows only for now); this replaces the functionality of 'basedir.txt' * Added automatic controller detection. * Controllers can be changed during emulation (no ROM reload required anymore). * Added support for Light Gun controller. * Added limited KidVid support (8, 9 and 0 start the games). * Removed superfluous controller option 'PADDLES_IDIR'. * Added configurable paddle dejittering. * Key-repeat mode improved; entering Time Machine by holding down a key combo continues to send events (previously, you had to release and then press the combo again). * Certain buttons in the UI can now be activated repeatedly by holding down the mouse button (Time Machine, debugger step/trace/frame advance, etc.) * Added option to configure mouse double click speed. * Added option to configure controller input repeat speed. * Added high quality scaling. * Made scanlines better aligned to scaling. * Added 'HiDPI' mode, which scales the UI by 2x when enabled. This is meant for 4k and above monitors, but can actually be used at any lower resolution that is large enough to display the scaled UI. * Fixed TIA 'Center' option, Stella now remembers the last windowed position. * Added fractional (25% increments) TIA zooms. * Removed 'tia.fsfill' option, replacing it with 'tia.fs_stretch'. This new option allows to preserve TIA image aspect ratio in fullscreen mode, or stretch to fill the entire screen. * Added configurable 'Overscan' option for fullscreen modes. * Fullscreen TIA modes no longer assume that desktop taskbars, etc are present, hence they are scaled to the proper fullscreen size. * Added option to display dialogs in screen corners. * Added hotkey for sound on/off. * Enhanced 'Command' menu to display current state and more commands. * Added option to save and load all TimeMachine states at once. * Added option to automatically load/save states when entering/exiting emulation. * Added option to change pitch of Pitfall II music. * ROM Info Viewer size is not limited to fixed zoom steps anymore. * ROM Info Viewer can now display multiple lines per property and the bank switching type. * In file listings, you can now select directories by holding 'Shift' on the first character entered. Entering characters in lowercase still selects files, as before. * Fixed bug when starting ROMs via MacOS finder. * Added various developer options for oddball TIAs: - stuffed player, missiles and ball move - delayed playfield bits and color - delayed players and ball VDEL swap * Disabled some developer options for 'Player settings'. * Writes to RAM read ports are ignored now. * Added Developer setting, which breaks on writes to read ports. * Improved breakpoints to now consider the banks. * Improved debugger's TIA display and zoom windows. * Improved hotkeys, now many emulation keys work in debugger too. * Fixed display of negative values in debugger; sometimes they were shown as positive. * Reworked ROM properties database, making it load faster in certain cases. * Updated internal ROM properties database to ROM-Hunter version 16 (thanks go to RomHunter for his tireless research in this area). Related to this, updated the snapshot collection. * Fixed 'Dancing Plate (Unknown) (PAL)' to use joystick. * Fixed cheatcode handling in 2K and 4K ROMs. * Fixed bug where ROMs smaller than 64 bytes were not recognized. * Fixed bug where frying one ROM was continued with the next ROM. * Fixed not working 7800 pause key. * Enhanced UA bankswitching to support certain Brazilian carts. * Fixed WD bankswitching. * Added FC bankswitching for Amiga's Power Play Arcade Video Game Album. * Added auto-detection of display format based on filename. * Auto-detection of bankswitch scheme by file extension now includes more human-readable formats (not restricted to DOS 3-char length). See the documentation for the new names. * Fixed bug in DPC+ scheme; 'fast fetch mode' was enabled at startup, when it should be disabled by default. * Some more work on DPC+ playfield 'jitter' effect for certain older DPC+ driver versions; more ROMs are now detected properly. Special thanks to SpiceWare for his research in this area. * Added proper Retron77 port. * Added proper libretro port, and fixed display for OpenGLES renderers. * PNG/ZIP image support is now conditionally compiled into Stella. All major ports (Linux/macOS/Windows) have it enabled by default. * SDL/GUI support is now conditionally compiled into Stella. All major ports (Linux/macOS/Windows) have it enabled by default. This is currently needed by the libretro port. * Updated included PNG library to latest stable version. * Updated UNIX configure script to work with the gcc version 10 and above. As usual, Stella is available to download at https://stella-emu.github.io, and donations are accepted at https://stella-emu.github.io/donations.html. Feel free to respond here with any issues you find. You can also PM, but feedback here is better, so everyone can see it (and to eliminate duplicate reports). Enjoy
  13. There is now preliminary code in Stella to detect the DPC+ driver used by this game, and act accordingly. This will be present in version 6.1, due to be released by the end of the week.
  14. OK, thanks for the info; I'll get it added in a moment. In the future, it might be better to release the ROMs named with the actual format. So instead of 'PAL', please use 'PAL60'. That way Stella can detect the PAL60, and you don't need a properties entry for it at all. This is a new feature coming in 6.1.
  • Create New...