Commit Graph

1023 Commits

Author SHA1 Message Date
stephena a3b00308c0 Fixed lag in mouse/paddle emulation when grabmouse is enabled. In a
future release, this should be configurable from within the GUI.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@832 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-14 14:07:24 +00:00
stephena c92414107f Updating the PC in CpuWidget area now moves the PC indicator in ROM area.
Disabled editing of banks when the ROM doesn't do bankswitching.

Fixed Shift-Tab key not being detected (and hence not being able to
reverse-tab through items in debugger).

Bumped version number to 2.0 and updated all documentation.  Barring
anything major popping up in the next day or so, this is essentially the
2.0 release.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@831 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-14 13:50:00 +00:00
stephena e3d8eef7ac Added 'Audio' tab to debugger. Currently, it only consists of the AUD
registers, and they're read-only.  This tab will be greatly expanded in
a future release.

Added a 'change bank' DataGridWidget to the ROM listing, and a
non-editable textwidget showing how many banks this cartridge supports
(just one for non-bankswitched ROMs).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@830 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-13 18:53:07 +00:00
stephena 54050ead3d Made sure bankswitching is enabled when a new Cartridge is created.
Brian, you can ignore my last email on this.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@829 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-13 02:05:36 +00:00
urchlay 069ccc4d24 Removed stray debugging output
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@828 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-13 01:13:20 +00:00
urchlay 4233fa3ae4 RomWidget now saves cart bankswitch state before disassembly and
restores it afterwards. Also, fixed the debugger "bank" command.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@827 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-13 00:59:30 +00:00
urchlay dbf97c41c6 Work in progress: bank-lock support for (most of the) cartridge types.
This will eventually be used to keep the RomWidget and prompt from
accidentally switching banks during disassembly/dump, when they hit
a hotspot.

Currently, the RomWidget is getting constructed before the Debugger has a
chance to lock the bank, so it isn't finished yet. Also, the prompt "bank"
command is temporarily broken (can read current bank, but not set it).

Thought I'd finish this tonight, but it's getting late...


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@826 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-12 03:32:28 +00:00
stephena ceec3433f4 Fixed TIA partial scanline updates when stepping/tracing. Now a
step/trace will continue updating the TIA from the last position.
If we haven't entered 'scanline advance' mode yet, step/trace will
now do so.  This was accomplished by moving all CPU updates to TIA, so
that the TIA device now throttles/controls the M6502.

There's now some code bloat in TIA, since there are three methods
updateScanline(), updateScanlinebyStep(), updateScanlinebyTrace() that
are very similar.  But it works, and I'm satisfied to leave it alone
for now.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@825 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-11 19:38:10 +00:00
stephena 568713ee45 Fixed 'delete last word' in PromptWidget.
Removed an ifdef from PromptWidget, and placed it in bspf.hxx.

Implemented showing the currently defined symbol for PC address
in CpuWidget.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@824 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-11 17:14:35 +00:00
urchlay c0f1ab9cc7 Frame greying seems to be working correctly now, except for Ms. Pac-Man
is still messed up. It's something odd the ROM is doing: I think it hits
VSYNC twice per frame... which no 2600 ROM should do, I thought...?


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@823 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-11 03:22:43 +00:00
stephena eeb5f66848 More documentation updates.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@822 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-10 17:31:14 +00:00
markgrebe a30cc80f51 Updated Xcode project file
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@821 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-10 03:20:10 +00:00
stephena 2633bd00db Updated VC.Net project file.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@820 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-09 23:12:49 +00:00
stephena 4a8c980b9b Yet more updates to documentation.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@819 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-09 22:08:31 +00:00
stephena 2c5cc1b566 Updates to documentation and internal About/Help dialogs.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@818 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-09 21:55:53 +00:00
stephena 446c2cdd7d Made sure ListWidget can take advantage of the new line editing
functions in EditableWidget.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@817 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-09 20:49:57 +00:00
stephena 7ec2daa9f1 Added some bash shortcuts to EditableWidget. These are the same as in
PromptWidget, so there's some code redundancy ATM.  In the future,
PromptWidget should inherit from EditableWidget and automatically
gain all line editing capabilities.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@816 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-09 20:41:56 +00:00
stephena 5ef87c8065 Added fixes for WinCE port from Kostas Nakos. There may still be some
things missing though.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@815 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-09 17:31:47 +00:00
stephena b7d13671cd Implemented "Save ROM" functionality in context menu of RomWidget.
Modified InputTextDialog so that any error messages disappear once
new data is entered.

Fixed bug with ContextMenu where showing a dialog box (from the CMenu)
didn't work properly.

Removed redundant EditNumWidget class.  It's functionality will be
handled by EditTextWidget eventually, when we add more comprehensive
error checking on input.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@814 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-06 17:28:55 +00:00
markgrebe 225049893a Oops. Forgot I need to change some compile settings. Reverting to gcc 3.3 instead of gcc 4.0, since C++ on 4.0 will not work with OSX 10.2, and I want to maintain compatibility for this release
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@813 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-05 03:35:22 +00:00
markgrebe b43cff5de8 Updating Xcode project file for recent changes.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@812 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-05 03:25:37 +00:00
stephena 225acee6ba Fixed bug in EditTextWidget whereby cursor wasn't being placed when
clicking the mouse.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@811 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-04 22:46:52 +00:00
urchlay 655bf38f4f Work around linker weirdness in static Linux builds: have to swap the order
of "-lz -lpng" when building statically (but NOT otherwise!). Means you
need "sed" installed to build a static binary on Linux, but that's not
much of a restriction (who would have make and gcc installed but not sed?)


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@810 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-03 13:40:48 +00:00
stephena a726556b41 More fixes for 'make install'. The stella.xpm icon is now installed,
although it isn't strictly needed for Stella itself (it's already
compiled in).

Added stella.spec file, which is used to generate a source RPM for
both PLF (Mandriva) and hopefully for all RPM distros as well.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@809 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-03 00:53:20 +00:00
stephena 6dba3c5b03 Some tweaks to PopUpWidget, so it behaves like in other GUI toolkits.
Pressing Escape exits the selection, and ignores any changes made.
Also, a mouse click must be done inside the widget for selection
to happen.  Otherwise, it's treated as a cancel, and selection is
restored to original item.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@808 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-02 22:09:12 +00:00
stephena 5a83ac4e74 Added 'joymouse' argument, which controls whether 'joystick emulates
mouse' code in GUI mode is activated.  This is deactivated by default,
since it could cause problems on systems that don't have joysticks
properly calibrated.

Added more descriptive names for Cartridge types in GameInfoDialog,
since I could never remember which ones were which.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@807 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-02 19:10:39 +00:00
stephena ef55ef20e1 Fixed bug where doing a 'define label address' without the required
address resulted in a crash.  This was caused by non-existent
error checking in DebuggerParser for this case.  I've reworked the
method in question quite a bit, so I'm not sure if it's completely
bug free ...


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@806 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-02 01:15:53 +00:00
stephena da85d8198a Added updated PopUpWidget code from latest ScummVM CVS. This widget
now has the ability to show two columns of items, in cases where
there isn't enough vertical space to show them normally.

Completely finished the GameInfoDialog by adding 'Cartridge.Type'
for both loading and saving.  With these changes, it should now
never be necessary to edit a properties file directly.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@805 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-10-01 01:42:36 +00:00
stephena 667590c0a8 Changed keystroke for switching between tabs from 'Ctrl-(shift)-tab'
to 'Shift left/right cursor', since Ctrl-Tab is usually an OS
reserved keystroke.

Fixed 'make install' command so it actually installs Stella.  Further
testing is still required.

Fixed graphical glitch whereby focus rectangles weren't being
properly drawn around widgets with an attached scrollbar
(PromptWidget and ListWidget).

I only have 5 or 6 outstanding bugs left.  After that, once the
TiaOutputWidget is complete, we'll be ready for a new release.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@804 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-09-30 22:12:18 +00:00
stephena 7dcfdedda6 Added remaining properties (except cartridge type) to GameInfoDialog.
So pressing 'OK' in that dialog will merge the properties into user.pro,
and doing a reload of ROM (Crtl-r) or exit/enter ROM will use the new
settings.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@803 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-09-30 18:17:29 +00:00
stephena 95c826f3d1 Oops, forgot to remove some debugging code.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@802 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-09-30 00:53:30 +00:00
stephena c6ac381c01 Added all editable game properties to GameInfoDialog. At this point,
only the 'Cartridge' properties can be saved to user.pro, and only
if you manually hit the merge keys (Alt-s).  Once this is complete,
the properties will be saved automatically when 'OK' is pressed, and
a ROM reload will make those new properties take effect.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@801 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-09-30 00:40:34 +00:00
stephena 9ba65abb12 Fixed issue with 'floating focus' rectangle in TabWidget, which
sometimes caused the focus rect to be drawn in the wrong place.

Activated some more items in GameInfoDialog, and have it actually
load properties for viewing/editing.

Fixed EventHandler/GUI unicode<->keycode conversion yet again.
Mark, if you're reading this, can you test it on OSX again?


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@800 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-09-29 18:50:51 +00:00
stephena bf108706ac Second pass at editing properties in GameInfoDialog. It still doesn't
work, but at least it compiles.

Fixed bug whereby pressing modifier keys in GUI mode would sometimes
be interpreted (and printed) as regular keys).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@799 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-09-28 22:49:06 +00:00
stephena b0c1c04598 First pass at converting GameInfoDialog to be able to edit properties.
I know it doesn't compile, but I have to commit it before I go home :)


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@798 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-09-28 19:59:24 +00:00
stephena 0158d919e6 Fixed text alignment issues in InputTextDialog.
Some fixes and reformatting for the Cheat code stuff.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@797 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-09-26 19:10:37 +00:00
urchlay 98387c6c80 Implemented stella-extended 7- and 8-digit cheat codes. These are like
Cheetah codes prefixed with a 1- or 2-digit bank number. Try "1236ea1"
in Battlezone: it should give infinite lives. "01236ea1" is the same
thing with a 2-digit bank number ("01" instead of "1", same bank).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@796 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-09-26 03:09:37 +00:00
urchlay 2f55b27695 Control-C is hotkey for cheat code dialog, non-remappable. After entering
a valid cheat code, we go back to emulation mode. Ideally, we'd keep
track of whether CheatCodeDialog was called by the menu or the hotkey,
and stay in the menu if it was called by the menu...

Unfortunately, Alt-C isn't available for our cheat hotkey (it's used
for enable/disable missile 0), and Ctrl doubles as the joystick 0 fire
button, so pressing Ctrl-C fires a shot (or starts a game, or whatever)
as well as entering cheat code mode. Not a big deal, I guess.

Currently there's no way to list or disable the cheat codes you've
entered. You can press Control-R to reload the ROM, which kills all the
cheats at once. I tried to figure out how to use the CheckListWidget to
do a cheat list with disable/enable toggles, but got horribly confused.
I think GUI programming in C++ is always going to feel like a foreign
language to me :(


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@795 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-09-25 23:14:00 +00:00
urchlay 8f035f8e3f CheatCodeDialog is semi-functional
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@794 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-09-25 20:18:46 +00:00
urchlay c917e2ee93 CheatCodeDialog work in progress.
TIA greyout work in progress.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@793 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-09-25 18:35:26 +00:00
stephena bf194366e1 Added fix for OSX port where backspace and delete keys weren't
being correctly recognized in the PromptWidget.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@792 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-09-24 21:43:59 +00:00
stephena 9ae4f66e36 Some bugfixes right across the board. We're on a rampage to get
the next release done, and this sucker is being finished soon.

Readded printing of watches to prompt.

Fixed issues with keypad buttons not being recognized in GUI mode.

Fixed bug in internal _select and _reset debugger functions, which
were reversed.

Toggling stereo/mono mode now updates the 'Cartridge.Sound' property,
so if the properties are later saved/merged, the modified sound
settings will be used for that game on next launch/reload.

Fixed a bug where selecting a new romdir in BrowserDialog would
sometimes cause a segfault.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@791 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-09-23 23:35:02 +00:00
stephena 5c1c2fe30c Added 'Set Breakpoint' functionality to the TiaOutputWidget in the
contextmenu.  This simply created a conditional breakpoint defined
as 'breakif _scan==XXX', where XXX is the scanline under the mouse
at that point.

Fixed bugs in adding breakpoints to the RomWidget.  Breakpoints
are no longer removed when the list is invalidated, and a
set/clear breakpoint from the prompt automatically updates the
RomWidget breakpoint list.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@790 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-09-23 17:38:27 +00:00
stephena b9613ec228 Fixed case sensitivity when specifying developer options on the
commandline.  So, for example, the format of a ROM can be
specified with 'NTSC', 'Ntsc', 'ntsc', etc.

Cleaned up some dead code in Properties class.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@789 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-09-22 22:10:57 +00:00
stephena 7fd1a9089b Added mini message box to debugger, which will be used to inform the
user of debugger-related state information.

Reworked breakpoint/trap support to display a message in debugger
messagebox indicating what condition caused the debugger to start.
This is much better than before, when no feedback was given as to
why the debugger started.

Some usability fixes to ListWidget/RomWidget.  There are still a few
more tweaks to do before the final release.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@788 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-09-20 19:09:10 +00:00
urchlay b96efe9da8 Got rid of debug output in yacc parser. Can be re-enabled by changing
a #define, if we ever need it again.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@787 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-09-20 15:17:16 +00:00
optixx 8f3204a496 o added pspoverclock config flag
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@786 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-09-18 14:43:32 +00:00
optixx f9b8762017 o added psp specific Framebuffer creation based on #ifdefs
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@785 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-09-18 14:40:55 +00:00
optixx ad2ba4343a o made private rectlist members protected to derive FrameBufferPSP form this class.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@784 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-09-18 14:38:52 +00:00
optixx ba3ca9a4ba o added specific PSP Framebuffer, derived from FrameBufferSoft. Just changed the createScreen Method to reflect the PSP specific windows size for HW and SW display modes.
o Just meant as a placeholder to get the psp build working again and for further improvements
o No optimized  Routines yet !


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@783 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2005-09-18 14:35:59 +00:00