-
Content Count
16,912 -
Joined
-
Last visited
-
Days Won
10
Posts posted by SpiceWare
-
-
There's 2 builds of RetroArch for the Mac, one that supports OpenGL and another that supports Metal. I'd initially installed the Metal version on my Mac Pro.
There's 2 versions of the Playstation Emulator: Beetle PSX, and Beetle PSX HW. The first is software rendering only. The HW version supports rendering via software, OpenGL, and Vulkan, but not Metal.
So I installed the OpenGL version of RetroArch. It just quits without a crash screen as soon as I try to launch a game. I turned on the logging feature, but nothing ends up in the log to provide a clue as to what's wrong.I also tried both versions on my Mac mini - neither runs on it.
I think I'll put this on the back burner for now, and periodically check in to see if they get it working.
-
Was trying out RetroArch on my Mac and while it was a bit confusing to get going, it has an interesting feature that improves the appearance of 3D games.
Internal GPU Resolution 1x:
Internal GPU Resolution 2x:
Internal GPU Resolution 4x:
It looks awesome, and even has options for 8x and 16x, but once I get to 4x it's slow and stuttering because it's falling back to software rendering on my Mac.
Anybody have any experience with this? I'd like to get figured out before I next replay the Spyro the Dragon trilogy.
-
1
-
-
1 hour ago, bluswimmer said:If I'm shooting downwards, I can't move to the left diagonally up or down. Same thing with shooting down left diagonally. If I shoot down right, I can't move to the left at all.
Just confirmed that this works OK for me in Stella using both analog sticks on a PS3 controller.
Are you by chance playing it via keyboard? If so you could be hitting a rollover limit.
-
1
-
-
7 minutes ago, sramirez2008 said:Ohh, I missed this thread. Thank you Darrell.
It's one of the reasons I bought a 7800, been bummed out that it was never released.
QuoteI don’t normally play via emulation, but after watching Willie’s “Arcade USA” video, I did the same with our PS4 controllers and Stella. My younger son really got into playing Robotron this way.👍
Hadn't seen that one, will check it out after work.
-
2
-
-
I have a couple Playstation controllers paired with the Mac mini that drives my TV.
I went into Stella and configured the right analog stick of controller 0 as joystick P1:
I can now play Robotron 2084 using both analog sticks, works great!
Now we just need to get @GroovyBee to resurrect his GB-XC1 Playstation controller interface so we can do this on real hardware!
-
1
-
-
There's an interlace demo in the old Stella Mailing List. You need to run it on hardware to see it properly as none of the emulators support interlaced (z26 used to, but dropped it as of ver 4.00).
If you can't run it then check out these photos I originally posted in 2007:
Even frame
Odd frame
Interlaced
-
1
-
-
2 hours ago, socrates63 said:Darrell showing a screen cap of Darrell -- I see what you're doing there Mr. Spice 🤠
Close - Darrell showing a video of Darryl. Larry's the brother shown in the thumbnail.
-
1
-
-
57 minutes ago, Redmiller said:Thanks for the link, Loved reading about it all.
You're welcome! I've been following it since it started. Have posted a few things like Pac-Man appearances in Newhart (which I've been rewatching):
-
-
Aha!
I just noticed the "Net Metering Credit" in the first image used -503 instead of the expected -665, and the "Remaining Bank" in the second image never had a value before but is now 162.
So it looks like I won't ever end up with $0 or negative bill, but did build up a credit.
-
-
If you want to animate the Mad Bomber then search for this section of code:
; select which Mad Bomber Image will be shown ; no animation lda #0 ; end no animation ; slower animation ; lda frameCount ; and #%00100000 ; end slower animation ; faster animation ; lda frameCount ; and #%00010000 ; asl ; end faster animationComment out the lda #0, and uncomment out one of the following sections of code, such as this:
; select which Mad Bomber Image will be shown ; no animation ; lda #0 ; end no animation ; slower animation lda frameCount and #%00100000 ; end slower animation ; faster animation ; lda frameCount ; and #%00010000 ; asl ; end faster animationAfter doing so the images will alternate between A and B versions. Frown:
Smile:
Surprise:
ROM
kaboom_deluxe_20200517_animated.bin
-
3
-
1
-
1
-
-
Done with the changes to use distinct Mad Bomber images and improve the city skyline. Also made a minor tweak to the buckets to add the missing water pixel.
This reply contains my final set of changes for Kaboom! Deluxe!. While I'm not using it, it is set up to support animation - I'll explain how to enable that in the next reply.
Summary of changes:
- Added sunset city skyline.
- Updated Activision logo to the rainbow variant.
- Added game variations 3-8, Pitch and Catch where the other player controls the Mad Bomber. Mad Bomber moves slowest in 3, fastest in 8. Game play for variations 1 and 2 is the same as in the original Kaboom!
- Paddle position indicator for Mad Bomber player.
- Paddle button to start new game.
Skyline & Rainbow logo:
In games 3+ a paddle position indicator will show up behind the score:
NTSC
kaboom_deluxe_20200517_NTSC.bin
PAL
kaboom_deluxe_20200517_PAL.bin
PAL60
kaboom_deluxe_20200517_PAL60.bin
Source
-
3
-
3
-
Made some progress - after removing that checkForLowerMouth logic to manipulate the Mad Bomber's face I was able to lower the building tops past the Mad Bomber's Mouth:
I then cloned the Mad Bomber kernel 2 times and updated each one to draw one of the other images. Smile:
Surprised:
I have not yet added the extra scanline after the score, so to test the new Mad Bomber kernels I've been commenting/uncommenting JMP statements:
; jmp MadBomberFrowning jmp MadBomberSmiling ; jmp MadBomberSurprised
That issue with the bombs shifting as they pass the water buckets returned, same as seen before in Reply 18. Possibly that'll clear up on its own once I add the extra scanline after the score and write the new logic to select which Mad Bomber image to draw.
-
1
-
-
On 5/14/2020 at 2:01 AM, Omegamatrix said:@e1will - I know it's been a while since you interviewed her, but do you still have contact with Carla Meninsky? If so I think it'd be awesome if you could show her this.
@Omegamatrix - was curious if my work on a warlords disassembly was helpful, or if you rolled your own.
-
4 hours ago, Dionoid said:I have problems navigating up and down the menu - it seems to go way too fast. I think you probably want to check if the joystick was released before going to the next menu item.
Joystick? For Warlords?
-
1
-
-
32 minutes ago, pvmpkin said:You indicate that it skips the next LDA instruction but I don't understand why that is used, the context of it.
Check the comments in Step 4 - 2 Line Kernel of my 2600 tutorial, one of my replies goes into detail in how the .byte $2c trick works.
-
1
-
-
Use a byte of RAM:
outside of kernel: cpx #5 bcc .nomask lda #%11110000 .byte $2c ; skips over the next LDA instruction .nomask: lda #%11111111 sta mask Kernel: lda (objectptr),y and mask sta GRP1 -
-
I suspect not, it would require 3 updates:
lda #brick_color sta COLUPF lda brickpattern, y sta PF2 ... lda #black sta COLUPF
because the playfield is used to hide the HMOVE bars:Crackpots doesn't have to read 2 paddles during the kernel, so had the time to do it.
Adding the 2nd paddle reading already made it tight by the buckets, so bricks definitely couldn't be drawn in the area where the buckets and splashes get drawn.
-
Did some preliminary research last night. I was originally looking to reuse that variable bomberExpressionState to control which of the 3 images were shown, and have it populated before the screen starts to be drawn. Turned out tempCharHolder, used during the score display, is the exact same byte of RAM so the test values I was putting in bomberExpressionState were getting overwritten.
All the other RAM is spoken for, but due to how the memory mapping for the cartridge ROM works in the 2600 I can use the upper 3 bits of a digit pointer for the score to hold it - I explain how that works here. Conveniently the BIT instruction makes it easy to check the uppermost 2 bits, allowing me to do this in the amount of time left that's left on the scanline just before the one that starts drawing the buildings and MadBomber:
bit tempWhichMadBomber ; 3 63 bmi MadbomberSurprised ; 2 65 (3 66) bvs MadBomberSmiling ; 2 67 (3 68) jmp MadBomberFrowning ; 3 70
10 hours ago, TIX said:Hey @SpiceWare I'm not familiar with the technical terminology.. so if there is a possibility to animate the whole sprite let me know
Hmm - there's not enough time to do that with how the screen is currently drawn, but I could insert an extra scanline between the score and skyline*. Doing so would allow me to use those 3 bits to select from 8 different images for the Mad Bomber.
* would also need to remove one from after the Activision logo to keep the scanline count at 262.
-
The RAM's used up so using a Graphic Pointer would be tricky, but the ROM's now 4K with plenty of room left. As such the Mad Bomber kernel could be set up to use 3 different routines that are hard coded to using one of these for the graphics:
- lda MadBomberFrown,x
- lda MadBomberSurprise,x
- lda MadBomberSmile,x
I'll take a look at making that change later this week as that should let me make the buildings look better. They're a bit squished compared to CrackPot because I couldn't update the building graphics on the scanline with the Mad Bomber frown/surprise/smile logic.
-
3
-
23 hours ago, KevinMos3 said:I tried your sprites, but wasn't sure how to make the switch from smile to frown work with them.
Usually we'd use a couple bytes of RAM for a graphic pointer, which requires using Y for the loop, and have 3 separate graphic images.
lda (MadBomberGfxPtr),y sta GRP1
RAM usage is tight, as was the 2K ROM, so Larry Kaplan hard coded the routine to use a single graphic image (lda MadBomber,x) and changed the graphics on the fly when X = 22.
DrawMadBomber lda MadBomberColors,x ; 4 eor colorEOR ; 3 and hueMask ; 3 sta WSYNC ; 3 ;-------------------------------------- sta COLUP1 ; 3 = @03 lda MadBomber,x ; 4 cpx #22 ; 2 are we drawing Bomber's upper mouth bne .checkForLowerMouth ; 2� if not check lower mouth lda #%01101100 ; 2 Mad Bomber frown graphic .checkForLowerMouth bcs .drawMadBomber ; 2� lda #%01101100 ; 2 Mad Bomber surprise graphic bit bomberExpressionState ; 3 bmi .drawMadBomber ; 2� lda #%01010100 ; 2 Mad Bomber smile graphic .drawMadBomber sta GRP1 ; 3 dey ; 2 dex ; 2 cpx #21 ; 2 bcs DrawMadBomber ; 2� .colorMadBomberLoop lda MadBomberColors,x ; 4 eor colorEOR ; 3 and hueMask ; 3 cpx #3 ; 2 bne .colorMadBomber ; 2�+1 lda backgroundColor ; 3 sta WSYNC ; 3
-
1
-
-
I don't recall what direction is holding, but if you save the value of SCHWA from one frame you can easily compare it using EOR.
lda SWCHA eor SAVED_SWCHA beq no_change ; handle change here, any bit in the accumulator that's a 1 is a joystick direction that's not the same as the prior frame no_change: lda SWCHA sta SAVED_SWCHA-
2
-

Retroarch scaling for 3D games
in Emulation
Posted
Found crash reports in Utilities -> Console. It shows the OpenGL version is crashing when it calls GlRenderer_upload_textures().