Commit Graph

2641 Commits

Author SHA1 Message Date
stephena 192ad0bf81 Fixed music bug in DPC+ scheme.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2555 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-10-02 14:56:31 +00:00
stephena 803083e51a Removed some debugging info from RIOT class.
Updated PNG library to latest release.

I hope to get back to Stella development soon, and do a new release
in perhaps the next month or so.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2554 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-09-27 22:17:27 +00:00
stephena faa78ad56a Added emulation of D6 (interrupt flag) to the Interrupt Flag register
of the RIOT chip.  This flag is related to the edge-detect circuitry, and
set on active transition of PA7 pin, cleared upon reading from TIMINT (but
only *after* its result is included in the TIMINT read).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2553 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-09-16 17:32:45 +00:00
stephena 06854e7877 Some improvements to RIOT handling of INTIM and TIMINT behaviour,
particularly in edge cases.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2551 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-09-15 12:44:24 +00:00
stephena f3d5beb3d6 Removed some debugging code.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2550 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-09-11 21:21:26 +00:00
stephena b59c95062c Restructured the RIOT handling of reads from INTIM and TIMINT. Also removed
all aspects of the M6532 chip that a real 2600 console doesn't use.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2549 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-09-11 21:16:21 +00:00
stephena d5269bce26 Updated ROM properties for personalized 'Star Castle' ROMs.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2548 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-09-04 13:25:42 +00:00
stephena 756a47bcf8 Fixes for 'illegal' VSYNC behaviour wrt 'short' frames.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2547 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-07-14 18:56:57 +00:00
stephena 9a4323eece Fixed handling of '.' character (indicating current directory) in
filesystem handling.  It is no longer a special case, since the FSNode
class now knows how to parse it directly.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2540 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-06-14 21:26:38 +00:00
stephena 7fa87e9098 Fixed minor graphical glitch when showing error messages
in the ROM launcher.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2539 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-06-10 15:29:13 +00:00
stephena 8228639ec8 Fixed bug in handling '~' character, do immediate 3.7.2 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2537 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-06-10 00:34:46 +00:00
stephena b9df070ab2 Final updates for 3.7.1 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2534 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-06-07 21:08:33 +00:00
stephena f07f82bd94 Updated Windows file handling for recent relative path fixes.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2532 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-06-07 19:34:40 +00:00
stephena 3dfceb8b32 Reverted new zlib code, since it causes major breakage in Windows.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2531 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-06-07 19:11:22 +00:00
stephena 15ea3e6439 Provide better error message on console for Xin1 bankswitch schemes,
and make 'Default' button do the right thing when configuring global
ROM properties.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2530 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-06-07 15:34:43 +00:00
stephena 21f25d1553 Added 64in1 and 128in1 multicart bankswitch schemes, although for
the latter you'll probably require the patience of Job.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2529 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-06-07 14:09:11 +00:00
stephena ed5aad268d Fixes for relative filename handling on the commandline
(more work required for Windows), and updated zlib to latest
version.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2528 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-06-07 13:29:56 +00:00
stephena 6353d118b7 Control-f now cycles between NTSC/PAL/SECAM/NTSC50/PAL60/SECAM60
display modes wrt both palette and display properties (# of scanlines,
size of window, etc).  This means you can now dynamically switch
between these modes at runtime.

Also added 'Shift-Control-f', which cycles through the modes in
reverse order.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2527 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-06-05 16:32:35 +00:00
stephena b231dda2a9 Some more DPC+ updates.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2526 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-06-04 19:20:27 +00:00
stephena 02ebafaf7d TIA emulation is now more accurate wrt irregular scanline counts.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2524 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-06-04 15:52:56 +00:00
stephena 2145c38087 Fixed bugs in DPC+ scheme; reset wasn't actually resetting the
Harmony RAM, and state saving wasn't working at all.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2523 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-06-03 18:05:14 +00:00
stephena 132dfcddf0 Revert isFile functionality in Windows for now; just assume it's a file if it isn't a directory.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2521 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-06-01 17:58:01 +00:00
stephena 9b8155b29d And so the cycle begins again. Fixed changelog so that lines don't
wrap when opening in the default text editor in OSX.  Yes, I *am*
that picky (OCD would probably be a better description).

Bumped version #.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2519 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-30 16:02:03 +00:00
stephena 31f0c52529 Final commit for 3.7 release.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2517 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-29 20:50:10 +00:00
stephena 4b4b1c9447 Updated changelog and ROM properties for Star Castle 2600 ROMs.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2515 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-29 17:09:27 +00:00
stephena 301f02bba6 Added 'Star Castle 2600' database info.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2514 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-28 20:00:38 +00:00
stephena 2ffe70faa4 Oops, forgot to remove mention of Windows 98/2k.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2513 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-28 19:55:26 +00:00
stephena efb620dca8 Stella now requires Windows XP and above; support for Win98/ME/2K has
been removed.  Sorry to anyone still using these systems, but this
decision is final.  It's time to move on, folks.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2511 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-28 19:48:33 +00:00
stephena 5bd54cb684 Implement handling of current working directory in Windows FSNode class.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2510 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-28 19:25:57 +00:00
stephena b0c1fb9d9f Error checking when processing filenames in UNIX.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2509 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-28 19:24:31 +00:00
stephena c63117c38d Oops, get_current_dir_name() isn't available outside Linux; it even
says so in the documentation.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2508 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-28 18:17:41 +00:00
stephena f60524770a FilesystemNode class how properly deals with relative files
in Linux/OSX; still TODO is add support for Windows.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2507 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-27 21:18:47 +00:00
stephena b725bf8fd6 Yet more webpage updates.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2506 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-27 19:43:43 +00:00
stephena 01d8c298ae Added 'dis.relocate' commandline argument, which passes the
Distella '-r' option (Relocate calls out of address range) to
the disassembler core.  Also added UI item to dynamically
change the setting.

Renamed 'resolvedata', 'showaddr' and 'gfxformat' commandline
arguments to start with 'dis', indicating that they're part
of the disassembler.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2504 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-27 19:27:55 +00:00
stephena 60912d6f38 Updated changelog for debugger bugfixes.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2503 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-27 13:18:24 +00:00
stephena 8f65771872 The built-in Distella was assuming the 'r' flag (-r on commandline)
option was set, which normally isn't when disassembling standalone
ROMs.  As such, the disassembly didn't match standard Distella output.
The 'fflag' and 'rflag' options from Distella have therefore been
integrated, but they're not configurable at this point (hardcoded
to true and false, respectively).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2502 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-27 13:07:38 +00:00
stephena 4750c64a17 Phosphor mode now works with Blargg TV effects! It takes an extra 2-3 MB
RAM to do so, which I agonized over for about a week, but I feel it's
a fairly good tradeoff for the features we get.  Eventually, I may come
up with a more accurate phosphor mode which eliminates this approach
entirely.

Reverted OpenGL framebuffer to 32-bit colour mode.  We're using Blargg
effects, so we may as well get the full fidelity out of it.  Besides,
testing has shown that there's not much speed difference between 16
and 32 bit modes, making me think that 16-bit is probably be swizzled
to 32-bit anyway.

Bumped release date to June 1, version to rc1.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2501 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-26 22:18:13 +00:00
stephena feac57253e Now that the Serializer class throws exceptions differently,
we need to modify what is caught.  Ironically enough, this fixes
a bug whereby when certain errors occur, the recovery system
itself would crash, not the issue that actually caused the bug!


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2499 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-25 12:41:19 +00:00
stephena 3375cb9f98 Fix crash in CTY scheme when accessing a zero-byte/non-existent
flash file.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2498 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-25 11:11:01 +00:00
stephena 93deeecadf More work on Chetiry bankswitch scheme. I may not get it finished
before the release tomorrow (since I'm not entirely sure how it
works), but I'm going to give it the old college try.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2497 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-24 21:41:54 +00:00
stephena 3a2865981a Reverted OpenGL framebuffer code to 16-bit colour, and removed blending
for phosphor effects.  It's just not ready to go yet, more research is
needed, and I just don't have the time to fix it.  Besides, it's been
two months since the last release, and I need a vacation.

Because of this, the release date is changed to May 25.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2494 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-24 16:26:33 +00:00
stephena b200260d85 Huge speedup in OpenGL rendering, by only updating part of the texture
instead of the entire area.  This fixes the speed regression from 3.6,
since the main TIA texture is now larger than before.  Previously it
was 160 pixels wide out of 256 total (rounded to power of two), now
it's 560 wide out of 1024 total.  In 3.6 it was updating a buffer 256
pixels wide, in the latest beta releases it was sending 4 times as
much data (256 -> 1024).  Now it sends only 160/560.  Similar
improvements happened with the height as well (210 lines vs 256).
On my test systems at least, this is an extremely large win,
resulting in similar speeds as 3.6 even though we've moved to a 32-bit
framebuffer.

Bumped version # for next beta release.

Pushed release date to June 1, to make absolutely sure I have
everything fixed and ready to go.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2493 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-22 15:22:02 +00:00
stephena e1ebfec032 Fixes for some issues picked up when compiling in OSX. This is
why compiling for multiple platforms with different compilers
really helps the robustness of code ...


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2492 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-21 21:33:39 +00:00
stephena beb18bfc43 CTY scheme now contains logic to determine when 'LDA #$F2' is executed.
The documentation states that this command is aliased, the current
frequency should be returned instead of $F2; this part isn't done yet,
since I'm still working on actually calculating the frequency.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2491 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-21 17:30:14 +00:00
stephena cac0eb609a Updated documentation for Chetiry (CTY) bankswitch scheme in the
source code header file.  As you can see, this is one of the more
complex schemes (and it isn't even finished yet!).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2490 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-21 00:15:47 +00:00
stephena ad8dd1d27e The OpenGL code now uses 32-bit textures. This is required for
blending in conjunction with phosphor effect.

For the Chetiry scheme, when loading or saving the 64 byte score
table, we now ignore the first 4 bytes (as specified by the
documentation).  These 4 bytes/addresses are actually a type of hotspot.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2489 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-20 21:10:19 +00:00
stephena 4281ac2436 Removed a few redundant FIXME and TODO's.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2488 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-20 18:26:59 +00:00
stephena 01c9bc30c3 More work on Chetiry bankswitch scheme. Preliminary version can
now load and play test ROMs, complete with emulation of timing delays
due to slow accesses on real Harmony hardware.  Still TODO is the tunes,
DPC+ stuff, which is stubbed out at this point.

Fixed bug in EFSC bankswitching; state files didn't contain extended RAM
information.

Cleaned up the Serializer API, resulting in slightly faster operation
and smaller state files.  Because of this, the state file format
has changed for this release (old state files will no longer work).


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2487 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-20 14:23:48 +00:00
stephena f14d47f042 Updated Changelog for ZP-RAM fixes.
git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2486 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-19 19:34:40 +00:00
stephena 86372a5fa4 Fixed disassembly issue for zero-page code; system equates weren't being
properly marked as such.


git-svn-id: svn://svn.code.sf.net/p/stella/code/trunk@2485 8b62c5a3-ac7e-4cc8-8f21-d9a121418aba
2012-05-19 19:14:52 +00:00