Commit Graph

365 Commits

Author SHA1 Message Date
stephena c10b612913 - More restructuring of the event handling code.
- Finally able to quit a game and start another within the same
program invocation (Escape quits current game, Ctrl-Q quits emulator)

 - More tightly integrated SDL into the codebase.  It's about time we
make use of SDL exclusively, and possibly speed up the code.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@374 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-02-25 02:29:38 +00:00
stephena 40dff9964f First stab at starting any number of games from one invocation of Stella.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@373 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-02-22 20:19:32 +00:00
stephena aa8b0b9bdd OpenGL mode is working again; snapshot and menuing support still MIA.
Rearranged some things from Settings to OSystem, since many things in the
Settings class weren't actually related to settings at all.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@372 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-02-22 18:41:16 +00:00
stephena f3a31ca452 Hurray, it compiles and runs again. At least in software only mode,
and without snapshot support.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@371 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-02-22 02:59:54 +00:00
markgrebe ce2974f6a9 Turned optimization on and changed version number
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@370 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-02-22 01:34:09 +00:00
markgrebe 2e5b873b88 Added change descriptions for MacOSX version 1.4.2a
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@369 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-02-22 01:33:03 +00:00
stephena 9c42f79392 More huge code reorganizations.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@368 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-02-21 20:43:53 +00:00
markgrebe c30051b0a3 Fixed Atari_time delay loop time calculator, which was causing a hang when a very large time delay would be sent as a parameter to usleep
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@367 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-02-21 19:32:07 +00:00
stephena 94d59674ad And so it begins ...
A major restructuring of the framebuffer code, which will eventually
result in an internal GUI and ROM browser ALA ScummVM.

The codebase is severely broken ATM.  It compiles, but that's about it.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@366 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-02-21 02:23:57 +00:00
stephena 267afcca06 Added a few last minute documentation changes. For the next version, I'm
putting all documentation in the main HTML file, since it's too time
consuming to maintain separate files that say the same thing.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@364 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-02-19 14:59:58 +00:00
markgrebe aba74d2939 In the init function, set the number of screen modes to zero before they are calculated, as this was causing a problem with the Macintosh version when the game was reset, or a new game was started
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@363 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-02-18 23:33:32 +00:00
stephena 47f8619ec5 Modified the FrameBuffer::refresh method to take a boolean value
representing whether a refresh should be done immediately or in the
next frame.

Do an immediate refresh just before taking a snapshot, to make sure
any onscreen messages aren't taken as part of the snapshot.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@362 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-02-18 21:26:31 +00:00
markgrebe a626c5bfbb Added ability to reset current game without reopening the same cartridge
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@361 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-02-18 05:37:15 +00:00
markgrebe 4bd87ac26c Added ability to reset current game without reopening the same cartridge
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@360 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-02-18 05:31:48 +00:00
markgrebe 2909cf001d Updated date
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@359 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-02-18 05:29:49 +00:00
markgrebe 9055dae6a7 Updated version number
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@358 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-02-18 05:28:57 +00:00
markgrebe 44203e578a Updated Mac code to reflect setting changes which were implemented in other versions
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@357 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-02-18 01:05:23 +00:00
stephena 248fcb92dc Some file cleanups for the impending 1.4.2 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@356 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-02-13 19:17:02 +00:00
bwmott cf07869026 Michael Rideout pointed out, using a demo program he wrote, that there's
a 1 cycle delay associated with modifications to VBLANK.  Also modified
the delay values associated with changes to NUSIZ0 & NUSIZ1 to fix
issues with Title Match.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@355 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-01-05 02:57:58 +00:00
stephena b46caf3cc7 Changed 'gl_fsmax' to mean "use desktop resolution in fullscreen OpenGL mode".
For OS's that don't support it, use the maximum resolution possible.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@354 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-01-04 21:04:20 +00:00
stephena 54f1aaa63f Made the default maximum zoom be 4, instead of 2.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@353 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-01-04 20:06:20 +00:00
stephena 5993383be6 Added screenWidth() and screenHeight() methods to the SDL framebuffer.
This will allow to figure out exactly how big a window can be on the current
screen.  Also, it will mean I can finally change the 'gl_fsmax' option to do
what I originally meant it to do; maximize to the desktop resolution when
doing fullscreen OpenGL.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@352 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-01-04 19:59:13 +00:00
stephena 3c0e0af714 Opps, the sound levels are changed by 'Alt [' and 'Alt ]', not the Ctrl keys.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@351 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-01-04 02:38:45 +00:00
stephena 6508718b39 - Added 'Ctrl ]' and 'Ctrl [' keys to dynamically increase/decrease volume.
- Added 'Ctrl 0', 'Ctrl 1', 'Ctrl 2', 'Ctrl 3' keys to dynamically set which
paddle the mouse should emulate.

- Updated the user manual with above options.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@350 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-01-04 02:29:31 +00:00
stephena 219687f521 Opps, forgot to exclude the makefile on the last import.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@349 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-01-03 19:16:55 +00:00
stephena e84e982439 Finally got rid of the annoying popping in starting/quiting Stella, and when
entering/exiting menu or pause mode.  This one has bugged me for quite some
time, and was just made worse by my new laptop (where the sound would cause
me to jump about 5 feet every time Stella started :)

Rearranged the output a little wrt sound and video settings.  This is only
seen if 'showinfo' is enabled.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@348 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-01-03 19:16:09 +00:00
stephena d890dbf6cf Added some 'Montezumas Revenge' hack entries. Thanks go to Trebor from
AtariAge for these.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@347 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-09-18 16:34:18 +00:00
stephena a22ad3fd2c Added 'video_driver' support to the StellaX frontend. Windib is now the
default video driver, and it's up to 10 times faster in software mode
than directx.

Updated the manual with the new 'video_driver' argument.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@346 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-09-14 19:10:29 +00:00
stephena 03d8c0eab5 First attempt at adding SDL_VIDEODRIVER support as a commandline option.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@345 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-09-14 16:10:28 +00:00
stephena a76e7516a8 Updated the Windows port concerning the recent Settings class changes.
Mark, if you're reading this, the OSX port will need to be fixed as well.
The changes are trivial.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@344 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-08-18 21:20:55 +00:00
stephena 97aabd229a Fixed a bug reported by D. Baron whereby the /etc/stella.pro file wasn't
used even when it should have been.  OSX and Windows users would never
see this, since those ports don't (yet) have any concept of user vs.
system files.  The OSX and Windows ports will have to be updated though,
because of changes in the Settings class.

Changed the code in SettingsUNIX::fileExists() to only check for the
existence of a file, not whether you can write to it.  This is what
the name implies.

Bumped the version number to 1.4.2_cvs.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@343 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-08-17 01:17:08 +00:00
markgrebe 0430cd0f22 Made About Box compatible with OSX 10.1
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@341 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-08-15 02:59:14 +00:00
markgrebe 873863049f Made About Box compatible with OSX 10.1
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@340 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-08-15 02:46:14 +00:00
stephena 2d7cbb0e0b Fixed the switching of NTSC/PAL mode and the associated onscreen
messages.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@339 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-08-12 23:54:36 +00:00
stephena f06a984030 Updated documentation and bumped version number to 1.4.1 for the
impending release ...


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@338 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-08-12 23:36:15 +00:00
markgrebe f7d0138c80 Updated processor requirements for MacOSX version
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@337 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-08-12 03:29:40 +00:00
stephena 3c43abcbf6 Removed some obsolete code; similar changes to be made in the other
Settings classes.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@336 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-08-06 01:53:50 +00:00
stephena 80df37627e Removed requirement for ROM files to be named *.bin. The specified ROM
directory is now searched for *all* files, no matter what they're called.

Bumped the version number to 1.4.1 in the main dialog.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@335 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-08-06 01:53:06 +00:00
stephena b99c0af7e1 Fixed missing 'break', which was causing both 'Change Filter' and 'Decrease
XStart' to be bound to Alt-F.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@334 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-08-06 01:51:15 +00:00
markgrebe 8401b26bfa Added preference to allow user to select the directory in which ROM images are stored. This simply sets the default directory to start the browsing in, and doesn't preclude the user from selecting a file outside that directory
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@333 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-08-02 04:09:10 +00:00
stephena c39b7f5322 Updated the properties file to work with all 2690 ROMs I know of. This
should hopefully take care of NTSC/PAL issues and the cut-off screen
problems in some PAL games.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@332 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-08-02 03:26:51 +00:00
stephena 3212a92e4b Updated the SDL patch from Eckhard Stolberg. The resulting SDL.dll
should work just as well as the one from the official SDL website, since
very few changes were required for Stelladaptor detection.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@331 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-08-02 03:24:33 +00:00
markgrebe bee196595a Fixed issue where preferences changed before a game was opened were not being changed. Removed average calculation in frame loop, which was not needed any longer.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@330 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-08-02 00:28:48 +00:00
stephena 0f0625d9fe Cleaned up the SDL event gathering loop. It now almost exclusively
makes use of switch/case statements instead of the slower if/elseif
structure.  Hopefully this will fix event problems some users were
experiencing.

The Control or Alt button can actually now be used in event remapping.
Due to the old event handling, the Control key could be assigned to
an event but would never actually be usable.

Removed the option to remap the exit event (for now), since I haven't
figured out a way to remap it *back* to 'Escape' if that mapping is
ever removed.

Added beginning of support for Stella to automatically determine the
correct framerate based on ROM format type.  The final version of this
will probably wait until Stella 1.5.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@329 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-07-28 23:54:39 +00:00
stephena e060f52112 Added the Event::Quit event to the remapping menu. This was requested by
quite a few people.  The only problem is that if you ever erase the 'Escape'
mapping for Event::Quit, there's no way to add it back, since while in menu
remap mode, the Escape key is used to erase an entry.  It can't be assigned
to any event.  So if you erase it, you'll have to delete the stellarc/
stella.ini file.  I can see this generating quite a few questions ...

Reworked the sound code for PAL games.  Now they sound just as good as NTSC.
Still TODO is research the correct speed for playing PAL games, since 60 fps
seems too fast.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@328 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-07-22 01:54:08 +00:00
stephena 4c6eddb427 Removed 'replace' command from different sections of code. This allows
filenames to be saved exactly how they're present in the stella.pro file.

Originally I added it since some OS don't like spaces in filenames.  But
since there are also other weird characters in the names (like
parenthesis and # symbols), it doesn't make sense to only remove spaces.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@327 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-07-21 00:15:08 +00:00
stephena ec4ddd4994 Included a different SDL patch to enable Stelladaptor support. This one
is much less invasive and stands a better chance of being integrated into
the main SDL codebase.

This fixes a problem with Windows 98 users not being able to use Stella
(oops).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@326 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-07-21 00:07:50 +00:00
stephena cd1e2fb4dc Fixed a last-minute bug with StellaX not showing a game in the gamelist
if it didn't have an entry in the stella.pro file.

It never ends ...


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@325 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-07-17 19:34:01 +00:00
stephena 2ff215b543 Zipped the SDL patchfile, since committing it to CVS changed it,
and thus subsequent patch attempts would fail.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@324 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-07-15 21:50:41 +00:00
stephena 52a79c583a OK, this is really the last documentation update :)
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@322 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2004-07-15 19:59:54 +00:00