Many changes have been made to Stella since that document was first
written, and quite a few things are now documented for the first time.
This means the next release will (feature-wise) look a lot bigger than
it really is :)
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1616 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
properties, and changed the lower bound on Display.Height (210).
Cleaned up some redundant TIA code.
Fixed crashes in RomInfoWidget caused by viewing images larger than the
allocated surface (now the remainder is simply not displayed).
Updated properties database for several ROMs (related to maximum height).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1613 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
don't need to use the commandline to change it.
Fixed RomAuditDialog to show more meaningful descriptions in its buttons.
More documentation updates. It looks like I won't be splitting the doc
into multiple HTML files for this release, but I can at least make it
more descriptive (I just realized that some options in Stella have never
been in the documentation at all).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1603 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
multi-page HTML document, as the current one is getting too unwieldy.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1602 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
be configurable for ListWidgets. Added UI item for this to UIDialog
(Misc tab), and added the '-listdelay' commandline argument for it.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1600 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
For now, there are 3 choices:
1) Show all files (the current default, and equivalent to previous
behaviour)
2) Show only ROMs (those files ending in a26, bin, rom, zip, gz)
3) Show specific ROMs (a subset of the valid ROMs from (2))
Associated this functionality with a RMB context menu in the ROM
launcher, and also accessible with the '-launcherexts' commandline
argument.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1598 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
a can of worms I don't want to open (and besides, the current
implementation works well enough).
Added '-ss1x' commandline argument (and associated UI element) to
generate TIA snapshots in 1x mode (ie, without any scaling included).
Useful for those who would like to generate many small snapshots, but
don't want to run the emulation in 1x mode (which is no longer possible
anyway).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1595 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
snapshots to the selected mode. This means that you no longer have
to make sure that snapshots are taken in 1x mode (as was the previous
functionality).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1585 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
which only applies to TIA mode (in fullscreen, of course).
Some code/debugging cleanups across the various FrameBuffer classes.
Finally fixed software rendering mode crashes. It now works just as
well as OpenGL mode, with all dialog positioning working the same in
both.
Reactivated OpenGL filtering (GL_LINEAR and GL_NEAREST). Only the TIA
image can be changed; the UI dialogs are always using GL_NEAREST).
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1579 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
to do between processing frames, and can be set to 'sleep' or 'busy'.
Sleep emulates previous Stella behaviour, releasing the CPU whenever
possible (at the expense of graphical tearing on some systems, unless
gl_vsync is enabled). Busy emulates the busy-wait behaviour of z26,
using all available CPU time but sometimes eliminating (or at least
reducing) graphical tearing.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1526 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
scanlines. Previously, this was only done for the first few frames.
However, that approach won't work for ROMs that change the number of
scanlines later in their run. Now, the framerate is automatically
re-calculated at regular intervals within the TIA.
Reworked 'framerate' argument to override auto-frame calculation when
it contains a non-zero value, and use the given framerate instead.
Setting it to zero resumes auto-frame calculation.
Re-activated framerate option in the UI. This can be changed while
the ROM is running, updates will be almost immediate.
Upped the release date, since more testing is required.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1524 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
new code seems to contradict some documentation on the timer behaviour,
but does work with all ROMs I've tested (it even fixes a few ROMs that
didn't work before). I'm not sure if the documentation is incorrect;
more testing and feedback is needed.
Bumped version number and documentation for 2.5.1 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1459 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
Updated docs for impending 2.5 release. I still have to add documentation
for Rom Info and Rom Audit functionality. That's the worst thing with
adding new features; I have to document them :)
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1446 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
generic joystick buttons.
Added complete keyboard/joystick support for all 4 paddles. Associated
paddle resistance decrease/increase/fire to joystick events in the
'spirit' of z26 (ie, joy0 left/right/fire is paddle 0, joy1 left/right/fire
is paddle 2, etc). These events can still be remapped independently
of joystick events, of course.
First real attempt at adding 4A50 bankswitch support, which is currently
being modelled on the E0 scheme (they're somewhat similar). The code
still doesn't work, of course.
Fixed bug in FASC scheme whereby reading from a write port didn't generate
an associated write as a side-effect. Thanks to Kroko of AtariAge for
the advice and partial code.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1388 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
doing some final testing, with the release coming on Monday, Aug. 20.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1353 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
Added '-channels' commandline argument, which allows setting the 'Cartridge.Sound'
property (the property was already present; this just adds a way to set it
from the commandline).
Added ability to change the locations for state saves, cheatfile, palette file
and properties file. These are now changable from within the application
(Options -> Files & Snapshots -> Config Files. They're also changable from the
commandline with '-statedir', '-cheatfile', '-palettefile', and '-propsfile'.
Fixed issues in commandline handling; maybe I should just use GNU getopts.
Updated the documentation. I guess that means a new release is close ...
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1332 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
and all associated settings/UI elements. It wasn't actually used anywhere
in the current properties database, and would definitely disappear in the
next version of the TIA class anyway.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1316 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
the OSX port, but I'm not getting feedback, so I'll do a release and then
deal with the complaints :(
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1226 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
Snapshot support is now always included, since it doesn't require libpng
and is only about 100 lines of code. If your particular port doesn't want
it, then don't bind an event to it :)
Removed changeWidth() and changeHeight() TIA functionality, in preparation
for the release after this one when it will disappear completely from the
core. Current ROM's which have these properties set will still function,
as long as 'tiadefaults' isn't turned on. Of course, one can still edit
the properties manually, but I'd like to discourage it.
Updated event strings in EventHandler. We now consistently refer to the
first joystick/paddle/driving controller/etc as zero.
Some more updates to the manual. I think it's pretty much complete at
this point.
Bumped version number to '2.3_rc1'. I'm basically finished at this point.
All that's left to do is make sure the weird OSX crashes some people are
having are fixed, and I'm awaiting feedback on that one.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1223 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
Changed all functions #define'ed in bspf.hxx to be named more consistently
(BSPF_functionname...), to make it more obvious what they are.
Changed 'DEVELOPER_SUPPORT' to 'DEBUGGER_SUPPORT' everywhere. Originally,
developer support was to encompass more than just the debugger, but since
there's no longer a reason to exclude the other stuff (due to most of it
being very useful even for non-developers), it makes sense to rename the
option. Those ports using 'configure' will need to update the arguments
used.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1216 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
property (Yes or No).
Changed the static initialization of Scaler related items to use const char*
instead of string, since the WinCE port has trouble with that.
Updated 'scale_ui' and 'scale_tia' to use lowercase options. So those
settings will be reset with this commit.
Added all recently added options to Settings::usage().
Huge update to the user manual. Things are getting very close now :)
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1207 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
rectangle merging. This makes the 'dirtyrects' option more relevant,
since now if it's turned off, dirty rectangles are not merged, and
the screen is updated with SDL_Flip() instead of SDL_UpdateRects().
This new functionality is very similar to how z26 works, but
experiments on my Linux system show it to be twice as fast on
average :) Dirty rectangle merging now defaults to off. I'm
leaving it in, since it benefits people in some cases. Basically,
non-dirty-rect support is optimal when many things are changing
onscreen at once, at the cost of more constant and generally slightly
higher CPU usage. Dirty-rect support is optimal at larger resolutions,
where it's usually at least twice as fast as without, but is suboptimal
at larger resolutions when lots of stuff is changing. At some point in
the future, maybe Stella itself can automatically switch modes depending
on which is faster at any point in time.
Added "[..]" previous directory functionality to BrowserWidget, the same
as already in the LauncherDialog. Thanks for Alex and Lou for the
reminder.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1197 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
'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
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
Cleaned up some errors in unzip code.
Removed some OSX stuff that didn't need to be in CVS.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@1037 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba