Jump to content

wavemotion

+AtariAge Subscriber
  • Posts

    962
  • Joined

  • Last visited

  • Days Won

    6

wavemotion last won the day on May 10 2023

wavemotion had the most liked content!

About wavemotion

Profile Information

  • Interests
    ATARI 2600, Intellivision, Colecovision, TI-99/4a

Recent Profile Visitors

4,641 profile views

wavemotion's Achievements

Stargunner

Stargunner (7/9)

2k

Reputation

  1. It does... but for the 6502 (Atari side) it only has to present 4K at at a time... it's the ARM side that is currently unable to support more than 32K of ARM code needed for TA and EA.
  2. It will not run currently. While the Encore does handle > 32K roms via a plethora of supported bank switching techniques, it does not support > 32K of ARM code which is what we have on cutting-edge games like Turbo Arcade and Elevator Agent.
  3. Very cool, Lewis! Re: POKEY - I'm sure the issues you have are on me. The emulation in that area is probably not perfect - especially given that I'm currently "sampling" the pokey registers and generating an output sample at the end of every scanline and that has to be synced up with a background ISR that fires off to push those samples to a sub-processor for output (and if it doesn't have enough samples, it will generate new ones - likely just repeating the last tone briefly). You don't tend to hear any problems with just TIA since it's already not that sophisticated -- but with Pokey at four channels (+2 TIA channels)... I can imagine things getting wonky. Are you running from a flash cart? If so, even on the 2DS/3DS, you will be in compatibility mode running at 67MHz which will not help the situation (fine for non POKEY and less complex games... but your latest offerings need another gear!). For the DSi and above (XL/LL/2DS/3DS) and running from something like Twilight Menu++ or Unlaunch (from an SD card) you would unlock the full 134MHz mode which obviously helps keep the pipeline moving. Anyway... awesome feedback and thanks!
  4. Wish I had known a few months back... had one that was in rough shape but would have been perfect for your use - you could have had it for a song (or less). I sold it on the AA marketplace.
  5. I started to look at it over the weekend (thanks to a post here on AA and some assembly code headers that describe the banking and separate Maria/Sally handling of memory). It reminds of Banksets in some ways... but just confusing enough that I didn't try to tackle it for 4.6. To be honest, Banksets would have been above my paygrade without @RevEng's handholding on some of the concepts and even providing me with some custom test programs to weed out a few bugs. I might be on my own with R&V and the last time I was on my own, I made a quadruple batch of cookie batter and although all of it got consumed, non of it actually got cooked... But yeah... it's on "the list".
  6. V4.6 : 06-May-2024 by wavemotion-dave Each game that utilizes a High Score Cart (HSC) gets its own 2K .hsc file Improved High Score Cart (HSC) emulation - improved initialization of the SRAM contents. Sanity checks added so that carts marked as 'NORMAL' (or selected as such) but are larger than 48K will not corrupt memory. New magnifying glass icon to ZOOM (and center) the display 1:1 with real 7800 output. This will crop on a DS/DSi since it only has 256x192 but very useful to toggle the 1:1 zoom for High Score Entries, etc. Support for .a78 V4 headers (will fall back to V3 if not available) For the new V4 header support, although I parse and interpret all V4 fields, there are some bits that the emulator does not yet support. For example, there is no dual-pokey support - for that designation in the V4 header, I'll simply enable Pokey @450 which gives you half the sound If there are any combinations that the emulation deems invalid (e.g. Banksets with EXRAM/A8 as the option), I'll fall back to the V3 interpretation and/or some sensical defaults. You can always override any of these settings in the configuration on a per-game basis because occasionally the bits are not set correctly (they are generally spot-on once they get into @Trebor's ProPack... but early forum releases are sometimes hit-or-miss). I've also made the hard decision to move away from a single high-score backed file to having each game separate. Some games don't play as nice with the HSC SRAM and it's safer to have each game get their own private 2K of SRAM for the high score (you must provide the HSC rom for the emulation to enable High Score support - and obviously only for those games that utilize it... see the readme file for details). I realize that a dedicated group of A7800DS players have built up their current high scores on A7800DS using the HSC feature... and this will force them to start achieving high scores from scratch again. Sorry guys! It's hard to make an omelet without breaking a few eggs.
  7. Welcome to the official A7800DS release thread. The latest versions can always be downloaded at my github page: https://github.com/wavemotion-dave/A7800DS A7800DS is an emulator for our beloved ProSystem on the DS/DSi/XL/LL (and yes, it runs on the 2DS and 3DS but won't take advantage of any of the upgraded features of those handhelds). Although A7800DS is one of my least downloaded emulators - I'm always happy to continue to provide support for the system which I enjoy. Part of that enjoyment comes from the community here which has been nothing short of outstanding in terms of their love for the system and, beyond that, a love for sharing information about the system. Most of the accuracy and improvements over the last couple of years have come as a result of awesome folks here who have answered endless series of questions and helped me grok the inner workings of the system. Any remaining errors, omissions and shortcomings of the emulator are on me. The emulator has the following features: All known cart mappers are supported up to 1MB (1024K + 128 byte header) with the exception of the SOUPER (Ricky & Vicky). Yes, this includes Banksets in its full glory. TIA and POKEY audio are supported - though only one Pokey at this time (no dual-pokey). Version 3 and Version 4 header support - prioritizing V4 and falling back to V3 as needed. Various controller mappings including traditional 2-button 'Proline' and also Twin Sticks (for Robotron - utilizing ABXY for the other stick) and the SNES2Atari Joypad. High Score Cart support with each game getting its own private 2K SRAM for HSC use - these are backed and preserved to your SD card. Everything runs full-speed and full-frame-rate on the DSi or above (with the faster 2x CPU) and most of the classics play perfectly on the older DS-Lite/Phat (a few of the complex homebrews and later banking games might slow down slightly on the older DS hardware) This has been a labor of love - if you have any feedback, please do share (even a thumbs up is encouraging!)
  8. Thanks guys... for my emulation purposes, I'm going set the uninitialized SRAM area to zeros (0x00 values). It may not be completely accurate but it's predictable. I'll leave some notes in my code regarding what we theorized.
  9. Good idea, CPU! I recall a pic somewhere (sadly, it was on a thread of HSC engineering woes)... let me find... I think it's your pic (of a board you were trying to troubleshoot for somone) Looks like a Toshiba TC5516APL: I just downloaded the datasheet and it's not obvious to me what an initial state would be here (probably more a reflection on my skill). This is a snippet of the datasheet I found:
  10. Greetings Programs! So for A7800DS emulation, my bible for High Score Cart format has been @RevEng's amazing resource: However, I've discovered that some later homebrews (e.g. Popeye) are a bit finicky about the state of the SRAM contents. If I don't run something like Asteroids (NTSC) to initialize the SRAM, the junk values seem to cause Popeye to show trash scores (mixing letters/numbers, etc). Understandable - so I initialize the HSC SRAM with Asteroids and I still get some behavior that I'm trying to understand. I assume the initialization/format would initialize all 2K of the SRAM but it doesn't - some of the bytes are not touched so it's whatever I had in my emulated SRAM buffer. That's probably fine - so long as the main tables are correct, it shouldn't matter what the actual contents of the data area SRAM is... or so I thought! These two snapshots represent a HSC SRAM that was cleanly initialized by Asteroids (NTSC) with the same cartridge name ("HSC"). The rightmost one had the initial SRAM buffer loaded with FF values. The leftmost one had 00 (zero) values. In the case where my uninitialized SRAM buffer initially contained 0xFF values, a game like Popeye will pre-populate high-scores with a non-nonsensical EEEEEE. In the case where my uninitialized SRAM buffer initially contained 0x00 values, a game like Popeye will pre-populate high-scores properly with 0s (zeros) but it also disables some of the features such as Brutus throwing 4 (four) bottles and the Novice mode background being red (i.e. the flag that is saved for that feature is clear). I realize that a game should NOT care what (probably random) state the SRAM is in and should initialize things to a proper state - but it begs the question as to what is the most likely state of real uninitialized SRAM on a high score cart? That is, before battery power is applied and a cart initializes (formats) the HSC area... I assume the values would be random? I think A7800js is zeroing the SRAM buffers before initialization. Unsure what A7800 is doing for SRAM memory init. Any thoughts, clues or random mussings appreciated! Lastly - not trying to throw shade on the amazing 7800 port of Popeye ... it's just the latest game that is giving my emulator a workout these days.
  11. https://github.com/wavemotion-dave/ColecoDS V9.9: 02-May-2024 by wavemotion-dave Added overlays for Blackjack and War Room. Improved War Games overlay. Added KANA lock LED indicator for Japanese MSX keyboard layouts. Correctly read-back the PPG Port B (needed to make the KANA lock work but is more accurate overall). Improvements to various Coleco PCB types for more accurate emulation of actual hardware.
  12. Spent some time this weekend polishing up the Colecovision overlay handling. Not a ton of CV games utilize the overlays - feels like a missed opportunity in some ways but maybe they were saving costs? Or maybe the typical arcade port didn't need an overlay. Anyway, I added a couple new virtual overlays to bring the total up to 12 supported overlays and cleaned up a few older ones - and it should now auto-apply the correct overlay if you're using a ROM with a known good checksum (you can still select the overlay manually in the game config).
  13. Really enjoyed meeting folks today and seeing all the classic (+modern) hardware! Tons of knowledge and talent... plus me. I'm the middle-aged guy in the back. No the other one.
  14. I got an opportunity to play @opcode’s Time Pilot Arcade today courtesy of Ed himself and I will say that as good as it looks in the video, the gameplay feels perfect. Buttery smooth and I had to ask twice if this thing was really running on a Colecovision (despite the fact that I was seated in front of it).
  15. Same problems getting to the forums on iOS / Safari over the last 24 hours. It just started to work again for me after a day of redirect to /admin/install which produced a blank page.
×
×
  • Create New...