'Controller.PaddleNo', replacing it with 'Controller.SwapPaddles' (Yes/No
type argument). The reasoning being that in combination with
'Console.SwapPorts', paddle 0 can be the default for any ROM as follows:
ROM uses paddle 0 as default:
Console.SwapPorts -> No
Controller.SwapPaddles -> No
ROM uses paddle 1 as default:
Console.SwapPorts -> No
Controller.SwapPaddles -> Yes
ROM uses paddle 2 as default:
Console.SwapPorts -> Yes
Controller.SwapPaddles -> No
ROM uses paddle 0 as default:
Console.SwapPorts -> Yes
Controller.SwapPaddles -> Yes
Updated all ROMs that don't default to paddle 0. This works for all
paddle input, both analog from mouse and/or joystick and digital from
keyboard, joystick, etc.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1192 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
Allowed modifier keys (Ctrl, Alt, Shift, etc) to be treated as normal
keys, and mapped to some action. In those modes, the modifier keys are
just like any other key on the keyboard. However, they also have
a special purpose when combined with other keys (text editing), and
this now works as well.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1189 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
Updated copyright dates on all headers (the reason for this huge update).
First pass at updating the user manual for all the new changes in the codebase.
Bumped version number to 2.3_alpha. It's getting close folks.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1188 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
are now in hLine() and vLine(), and it's probably optimal to leave them
there.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1184 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
meaning that if a command is running, it can be interrupted, and Stella
doesn't lock up in the process. It all feels like sort of a hack, but
for now it's the best we can do.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1183 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
hardware in this device is a known quantity and is using a hardware surface,
perhaps we can take advantage of that.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1177 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
or greater. I'm hoping that one older systems, the code will still run
and just ignore these new options.
Added commandline argument '-gl_vsync', which enables v-sync'ed updates
for OpenGL, if it's available (see above). Also added a setting for
this in the VideoDialog.
Fixed OSX OpenGL handling so that it doesn't specify an OpenGL library name,
and updated FrameBufferGL to use the default name in that case. OSX users
will probably need to reset their settings file for this to take effect.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1175 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
has been compiled for at least 4 months. At least it now compiles again
(but OpenGL mode doesn't seem to be working).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1174 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
commands. It's not quite working right now.
Added preliminary GP2X framebuffer class, so the GP2X can optimize
for that system. It's based on FrameBufferSoft, and doesn't really
do much differently right now.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1167 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
The only time the FrameBuffer is (re)created is when one doesn't exist
(at the start of program), or when toggling between software and OpenGL
mode. Hopefully this will fix the problems in the GP2X port wrt the
new SDL libs. But even if it doesn't, I think it's a cleaner way of
doing things ...
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1166 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
button to GameInfoDialog, which basically resets ROM properties to
built-in (compiled) defaults, and removes the entry from an external
stella.pro file (if it exists). A ROM reload is still necessary
for these settings to take effect.
Removed 'Alt-s' properties merging shortcut, since it does the same
as clicking OK in GameInfoDialog, and there should be only one way of
doing that.
Fixed bug in UI where pressing state-change keys (Ctrl, Shift, etc)
would be interpreted as characters.
Added ROM properties for "Strat-O-Gems Deluxe".
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1165 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
Tied 'OK' and 'Cancel' events to closing the About and Help dialog boxes.
Fixed bug where menu event mappings weren't being reset on default.
Fixed bug where some characters could be mapped to an event, but didn't
actually do anything. This is related to Unicode issues, and may fix
problems that non-ASCII users have been experiencing.
Fixed issue with joystick buttons/axis events not being processed in
PopUpWidgets. This fixes the problems experienced by GP2X users, where
selecting a popup menu seemed to lock Stella (in actual fact, it was
still running, waiting for input).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1163 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
remappable in the InputDialog. These are a shortcut for the OK and
Cancel buttons in certain Dialog boxes, instead of having to tab to
the respective buttons. By default, 'UICancel' is mapped to Escape,
and 'UIOK' is not mapped to anything.
Hopefully fixed the issue with the GP2X window not being cleared
when switching between emulation modes.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1160 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
mode. It was actually always supposed to do this, but a one-line
bug prevented it (thanks to Alex and TelcoLou for this).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1157 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
ones (reported to not compile by Alex, the GP2X maintainer).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1156 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
the version of Stella used, as well as some ROM info (name, md5, etc).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1155 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
now belongs to the Console class. A single user definable palette
can now be automatically loaded. This new palette file must be
named 'stella.pal', and located in the app base directory
($HOME/.stella for Linux, installation dir for Win32).
The new palette file must be at least 768 bytes (only the first 768
bytes are used). The first 384 bytes are 128 red-green-blue 8-bit
values, or 24-bits per pixel for NTSC. The next 384 bytes/128 colours
are the same, except for PAL. The PAL colour-loss palette is automatically
calculated from these, so it's not necessary to do so in the palette file.
Added 'user' to the list of options that can be specified for '-palette',
and also added the option to the VideoDialog.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1154 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
Brad), I realized that the PAL 'colour-loss' effect wasn't being done
with the 'original' and 'z26' palettes. This is now fixed.
Changed a few ROMs from PAL to PAL60.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1153 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
refresh rate.
Updated properties for AStar and Ladybug ROMs which have PAL60 versions.
Still TODO (now that the infrastructure is in place) is update all other
ROMs that might be PAL60.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1152 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
commandline or by pressing Ctrl-0/1/2/3). Also removed all related
settings from the settings dialog.
Added a ROM property called 'Controller.PaddleNo', which specifies
which paddle to use for a particular ROM (not all ROMs use paddle 0
be default).
Large update of the ROM properties, based on info from z26.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1151 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
no longer uses that scheme (it always re-creates the OpenGL context).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1150 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
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