Sierra On-Line accidentally included the source code to their AGI adventure game engine on some copies of Space Quest II. Its presence is not obvious but with enough sector sleuthing it is possible to recover about 70% of it. The recovered source code is peppered with illuminating comments regarding its history and authors. It can be examined in a GitHub repo linked in the article.
@xot that's how some DMA works. DMA does not always work like this on every system. Famously, the Sega Genesis featured something called Blast Processing, which is the ability for the 68000 and VDP to access the same bus at the exact same time during DMA, so you can write directly to the scanline during active scan to drive it at 8bpp, despite the Genesis only formally accepting 6bpp color.
@french_touch@fenarinarsa You wondered about the AY's /RESET being connected to a diode. This stops the 6522 from resetting the entire computer when it resets the AY.
Crossrunner inspired me to add branch arrows to my Apple II emulator's real-time disassembler. I already had little AppleWin-style direction indicators but this is way cooler. These are rendered with text but I expect I'll switch to a bitmap overlay that can pack more arrows in a narrower space.
One of the things that delayed me from becoming nice and pragmatic about code is StackOverflow
Any question like "how do I iterate over a dictionary" and everyone's like "DON'T, use a different collection instead".
Truth is, absolutely iterate over a dictionary. If your way of accessing it during performance critical stuff is by key instead of iteration, you're using it right. There's no harm iterating over it for cleanup stuff in loading or exit code.
In this Revision 2024 talk, the lovely @fenarinarsa presents the humble Apple II, its place in the demoscene, and the many challenges developing for it.
I spent a couple of days working on Mono6502 emulator optimizations. Made some great improvements and there is plenty of room for more. https://www.youtube.com/watch?v=lPEKoxMzU6s
@fenarinarsa Yes, this is NTSC. I could have clarified the meaning of 17030 cycles but I was trying to keep it brief. I have not yet tried emulating a PAL system but I will at some point.
Photobucket has been warning me every few days for months that my account is about to be deleted. "Fine," I think, "do it." But the emails never stop. I finally had enough and clicked the link to affirmatively delete my account. It logs me in but I see no way to delete it. Certainly, there are offers for me to pay them so I can keep my non-existent photos but I want to be done with it. This feels like harassment.
I'm tired of social media, but I miss the sharing of resources, so I decided to host this thing: https://gamedev.city/ It's just a link aggregator, like Hacker News, Reddit, but for game dev resources! Feel free to request an invite, I'll review them soon!
Got my A2 VidGA from @MuseumJoe yesterday and hooked it up today. It works really well and I'm very excited that it almost fully emulates Video-7 / AppleColor RGB. This will make emulator coding much easier ... and cheaper! Thanks, Joe!
It's built and it didn't blow up! It also didn't do anything else! Beyond doing some very basic visual, power, and continuity tests, those extremely sussy 6522 chips need a close examination. They did not come from a reputable source and are clearly sanded and rebadged with laser etching.
It looks like I got four-out-of-four bad 6522 VIAs. It's hard to be sure since my testing was done in the Mockingboard. One seems to function partially but it is unreliable. I don't think the problem is in the card but I should make a standalone tester. What a drag.
There may also be a problem with the amp or mixer circuit. I routed the Apple II's speaker through the card and it rings badly whenever a sound ends with the speaker energized. This can be as simple as just clicking the speaker at $C030.
OK. Nine supposedly new-old-stock 6522 VIAs are on the way. There better be two good ones in that lot! Saving money by making my own Mockingboard is getting expensive.
A foot-and-a-half of "R6522" chips came in today. None are new or genuine. I thought I could trust a US seller but nope. The tops are identical but they come from at least four different foundries. They are pulls that were sanded, painted, and laser-etched to pass off as new. Hopefully some at least work but this is very irritating.
The seller ghosted me but I complained to eBay and it looks like I'm getting a refund. I'll put the money toward a pair of new and genuine WDC 6522 VIAs.
@noelfb I only tested a few in this batch but they seemed marginal or worse. The main problem is these were not new or new-old-stock, which is what I paid for. I hoped to get some vintage chips because they behave very slightly differently from current ones. One of the differences is a bug in the new design but that's not important for my application.