course, I still can't test this until I find an OSX machine ...
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1149 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
the VideoDialog.
Updated properties for Picnic and Philly Flasher.
Completely removed all libpng stuff from OSX. Still TODO is find a
system to compile the OSX version, and test the actual changes.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1148 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
the properties file (instead of using md5sum). The md5sum naming
is no longer needed, and made it very difficult for users to
distribute the state files.
Similar to above, removed ability to name snapshots according to
md5sum, and instead use romname. Consequently, removed all
references to 'ssname' commandline argument and GUI related
config options.
Added ability to specify a different 'base directory' for settings,
state files, etc. Normally, this is chosen at compile time, and is
set to $HOME/.stella/ for Linux and OSX, and the current dir for Win32.
Now, if you set the 'STELLA_BASEDIR' environment variable, it will
use that path instead. Note that this must be set every time Stella
is run, since there's no way to save it to a settings file (since
the settings file location is dependent on what the env var contains).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1147 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
well). Hopefully this bug is fixed for good.
A few updates for the Win32 VC project.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1146 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
There was really no need to have this as an object, since it's all static
code anyway.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1145 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
at how easy it was to just write the PNG directly; it takes roughly the
same amount of code as when interfacing with the PNG library! One
less dependency is always a good thing, since some systems might not
have it installed by default.
For now, the Linux side of things is complete (configure script, etc).
Still TODO is check the Win32 project file, and rework the OSX stuff
(OSX had the full libpng sources embedded in src/macosx). I suspect
this will fix the bugs recently reported when compiling Stella on
Intel-based Macs.
Added a freedesktop.org compliant stella.desktop menu entry, which is
now installed as part of 'make install'.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1143 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
the vertical bars are drawn in the SuperCharger BIOS roms. When this is
set to true, each bar is drawn as fast as possible, to speed up loading
of SC BIOS. Requested by various people on AtariAge.
Still TODO is add a GUI checkbox for this (figure out exactly where in
the settings this item belongs).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1142 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
to the debugger (incorrect width for DataGridOpsWidget).
Added 'autoslot' commandline argument. When set, pressing the save state
button (by default F9) will save state to the current slot, then
automatically switch to the next higher slot. I still need to add this to
the GUI settings somewhere. This was a request from N. Strum of AtariAge.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1140 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
that blending is now per-ROM.
Added slider widget to GameProperties dialog to change the phosphor
blend amount.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1139 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
(no more editing the configure script). It's still not working, though.
Added more options to the AudioDialog settings, allowing to set output
and TIA frequency, and volume clipping. These are the same options that
were always available on the commandline; they're now exposed to the GUI
as well.
Fixed segfault when launching Stella without a stellarc file.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1137 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
- removed TEXTURES_ARE_DIRTY logic, and just recreate the GL textures
when a screenmode changes
- enable checking for machine type and if nasm is available
- logic to enable scaler mode only when in OpenGL mode (still not complete
and defaults to off)
First pass at adding scaler code to OpenGL. Still much work TODO,
but the C version is working correctly (asm is causing crashes,
haven't figured out why). GL quad coordinates aren't properly
set yet, so the image always appears in the upper left corner, and
is not scaled to the window size. CPU usage is also quite high,
but I'm on a 1GHz laptop with i950 GL, so that may explain it.
Fixed long-standing bug in software rendering, where switching to a
lower-res screen while a message is being displayed would cause a
segfault.
Large refactoring of mainSDL. Specifically, OSystem now owns all
the subsystems except for Settings, taking responsibility for creating
and destroying them.
Properties fixes for 'Tomarc the Barbarian' and 'Gyruss'.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1136 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
positioned GUI elements in emulation mode (I was a little too eager with
code pruning).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1135 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
framebuffer. Fixed getScaler() logic to only use scalers that are actually
available in a particular mode.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1134 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
functionality is exactly the same as before; Alt-Equals goes to the
next valid scaler, and Alt-Minus goes to the previous one.
What were previously zoomed modes are now treated as scalers, named
'Zoom1x', 'Zoom2x', etc. Various scalexx and hqxx modes will also be made
available.
For now, and probably forever, these advanced scaling modes will only
be available for OpenGL, since if you don't have a card that can handle
GL well, the scalers will probably be too much anyway. Also, the advanced
scaling will not be available in UI mode, only OpenGL emulation mode.
The UI (Launcher, Debugger) and emulation modes are now scaled separately,
specified with the new settings 'scale_ui' and 'scale_tia'. The 'zoom'
setting has been removed.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1133 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
clear the flag. This has been verified using a real 2600 by writing
a program which clears the B flag and then displaying the contents
of the status register.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1124 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
read or not. Also modified the TIA code so that if the last access
wasn't a read then it does not do a WSYNC operation. This allows the
emubug.bin ROM to execute and report "2600" instead of "EMU".
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1123 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
so that they start in bank 0 instead of bank 7. Some homebrews have
been developed assuming bank 0 is the default.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1120 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
delayed (i.e., new copy of the ball starts immediately if it is enabled)
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1119 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
support. Changed the configure script to not build AtariVox support by
default, since it's still a work in progress (and requires extra code
that isn't in CVS yet).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1118 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
for the AtariVox support but not needed otherwise. Also changed a forward
declaration of a struct which was declared as a class. I'm currently
building without AtariVox support, however, it should work as before if
ATARIVOX_SUPPORT is defined.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1117 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
left side of the screen when score mode is enabled. This was pointed out
by Darrell Spice, Jr. during his work on Medieval Mayhem.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1116 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
Added stubs for 4A50 bankswitching scheme. Autodetection of this cartridge
isn't working, and the actual class doesn't do anything! But it's a start.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1115 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
...though not well (sounds like it's chewing gum, plus there are nasty
delays in gameplay).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1113 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
anything that was necessary.
Changed AtariVox code to be a compile-time option, and integrated rsynth
code into the 'Stella build' style, with a module.mk file.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1112 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
a big library, and it's not commonly installed anywhere, and it's GPL.
Actually, a good chunk of rsynth can be removed (all the stuff related
to perl modules and text-to-speech, which we won't need for Stella). I'll
prune it when I figure out exactly what I can keep...
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1111 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
people who don't have ctags installed.
WIP debugger equate restructuring.
WIP AtariVox emulation. Not very far along yet, but at the moment,
we're able to read the speech data output by vox_test.bin and spit out
the phoneme values on stderr.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1109 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
underlying Debugger widgets. This is needed for some keyboard layouts
where normal characters are input using Alt key combinations.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1108 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
UI events, similar to multiple key events. Still TODO is add support for
joystick hats, and make sure these changes actually work in the GP2X port.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1107 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
rendering modes. At times messages were shown when they weren't supposed
to be, and vice versa.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1105 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
mappings (not fully tested yet, since I don't have access to a joystick
right now).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1103 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
Finalized remapping of GUI/menu events, and added an interface to change
these mappings from 'Input Settings'.
Fixed bug with taking snapshots having a previously overlaid message
being part of the image.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1102 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
is now fully navigable via the keyboard be means of 'tab-like'
functionality. This means that eventually systems without a keyboard
will also be able to navigate the interface without resorting to the
buggy joymouse code (which is soon to be removed).
Laid the infrastructure for remapping GUI events, whereby (for example)
a widget checks for Event::UISelect for 'doing its thing', vs. looking
at the Enter/Return key. So widgets now respond to events, and events
can (eventually) be remapped to *any* device.
Currently, these UI events are as follows:
UIUp, UIDown, UILeft, UIRight, UIHome, UIEnd, UIPgUp, UIPgDown,
UIPrevDir, UINavNext, UINavPrev, UITabNext, UITabPrev, UISelect
At present, they're hardcoded to key events only, so pressing 'Return'
will send a UISelect, cursor up a UIUp, etc. When the remapping code
is complete, *any* input will be able to send these events, and that
remapping will be distinct from emulation mode. So, for example,
cursor up in GUI mode might generate a UIUp event, but in emulation
mode might generate a left joystick up event.
Modified 'tab' key while in emulation mode to only enter the options
menu. Once inside the menu, the tab key acts as navigation between
elements, and exiting the options menu requires navigating to the
'Exit menu' button.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1100 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba