Sign in

bbbbbr

@bbbbbr.bsky.social
869 followers 453 following 936 posts

Scrapper. Napper. Occasional bit pusher Game Boy games & Carts: bbbbbr.itch.io (Wordyl, Petris, QR-Paint, etc) GBDK dev team member MegaDuck info: megaduck.dev

PostsRepliesMedia
bbbbbr @bbbbbr.bsky.social · 13h
Was enjoying some capnjazz recently, maybe now it's time to put on some Beatscribe too. :)
130
bbbbbr @bbbbbr.bsky.social · 02/10/2026
Thought about it today on a ride and realized a better solution might be setting a timer for near the end of vblank and use that to signal the end of safe vram access. And maybe following the lead of the bios and having a dma queue (but putting it in the vblank interrupt).
020
bbbbbr @bbbbbr.bsky.social · 01/10/2026
The emu interrupt situation did improve, so now I can bring over the classic petris skullcat intro scanline effect.
081
bbbbbr @bbbbbr.bsky.social · 01/10/2026
Ofc could be wrong in my understanding of how these things all interact, but that's what appears to be happening. This doesn't apply to bitmap vram, but I love tiles and sprites.
000
bbbbbr @bbbbbr.bsky.social · 01/10/2026
The one aspect of #CasioLoopy dev that's a pain is CPU takes priority over VDP for VRAM access. Which seems to mean VDP can't update scanline counter if you try to busyloop read it for safe VRAM access. Annoying to work around and more so trying to avoid vram snow. A step down coming from Game Boy.
251
bbbbbr @bbbbbr.bsky.social · 30/09/2026
And the era before velcro cable ties, no less!
011
bbbbbr @bbbbbr.bsky.social · 24/09/2026
In the quest (hopefully not futile) to use a single vblank interrupt source across most #casioloopy emus (can't right now), I wrote a test ROM for it. Not sure emu maintainers, who have their own things to do, will use it. I've done some emu work but am not good at it. github.com/bbbbbr/loopy...
Screenshot of a interrupt test rom running on a casio loopy console. It shows various interrupt sources (nmi, irq0, irq1) and all of them passing
080
bbbbbr @bbbbbr.bsky.social · 24/09/2026
Thank you! Glad to hear it might be possible. As much as I love the giant loopy eject button, I'm sure it would be glad to be used a little less often. ✨👏
010
bbbbbr @bbbbbr.bsky.social · 24/09/2026
Also, thank you so much for making the flash cart! It's been a real delight to learn and explore the console, and being able to run on hardware makes a huge difference.
010
bbbbbr @bbbbbr.bsky.social · 24/09/2026
"Related" question, could it support re-flashing while it's still plugged in or is there a technical reason that wouldn't work? (looks possible in the source?) Been doing the eject-program-insert loop so much (partly due to my flail dev style + making test-roms) and worrying about wear and tear.
220
bbbbbr @bbbbbr.bsky.social · 23/09/2026
Also this: // 0 = Panning won't be reset after an SFX, 1 = Panning will be set to 0XFF after an SFX plays. #define MONO_MUSIC 0 github.com/bbbbbr/canyo...
110
bbbbbr @bbbbbr.bsky.social · 23/09/2026
I haven't used it but toxa's should be better integrated. I remember fussing with cbtfx to get things working as intended in canyon racer. If you stick with cbtfx, feel free to rummage the source for ideas (ignore license). 😅 I do think everything was working in the end. github.com/bbbbbr/canyo...
110
bbbbbr @bbbbbr.bsky.social · 22/09/2026
The limitations can be tricky. Sometimesmusic is written to rely on some channels less so they can be "muted" and released for sfx use without degrading the current song too much, and then un-muted when sfx is done. Are you using toxas sfx driver + hugedriver?
100
bbbbbr @bbbbbr.bsky.social · 22/09/2026
Oh, nice. Didn't see this before I posted my comment, yeah agreed!
000
bbbbbr @bbbbbr.bsky.social · 22/09/2026
Same for jams. We took the hit on gbcompo25 being unlisted due to forgetting the preview image for a week or two. We've been doing it long enough that we should know, but there are lots of details and sometimes things slip through the cracks.
010
bbbbbr @bbbbbr.bsky.social · 22/09/2026
Would be very useful if we could clone settings from another projects of ours, or make minimal templates. When I put a new project up I almost always have an existing one open as a reference, manually copying settings, trying not to miss things.
120
bbbbbr @bbbbbr.bsky.social · 19/09/2026
And rasta themed!
110
bbbbbr @bbbbbr.bsky.social · 19/09/2026
Was trying to get nmi and irq0 interrupts working (for vblank shadow oam copy) and dabbled with hblank some. Stumbled across this nice twisty bar effect. Camera footage since emus I can run don't support the interrupts 🥲. New loopy MiSTer core handles it reasonably well (little jitter aside)
091
bbbbbr @bbbbbr.bsky.social · 18/09/2026
The #Petris port to #CasioLoopy console becoming very playable. Feels good to cross that threshold. Still lots of jank and polish needed. The (incomplete) frog border evolved out of re-using shrub tiles & need to fill extra screen space compared to Game Boy Color. Might try for various pet borders.
081
bbbbbr @bbbbbr.bsky.social · 17/09/2026
We have pets, and they are gettin' long! Scrapped and redid half my porting changes to the #Petris gameplay logic. Way cleaner and working gameplay came together much faster. Obvs still screen cleanup and game notification porting to do, but that should be more straightforward. #casioloopy #loopy
041
bbbbbr @bbbbbr.bsky.social · 16/09/2026
Another alternate, if you aren't using scanline interrupts for something else, is to move the vbl update to mid-frame with an LYC interrupt. That could allow most other things directly after a vsync call to complete before music was updated.
010
bbbbbr @bbbbbr.bsky.social · 16/09/2026
Guessing scroll maybe pushed later due to the (variable) time it takes for the music vbl to finish. If that is the case, and isn't implemented like this already, a possible solution is: Have shadow scroll x/y vars and a vbl that updates to them *before* the music vbl.
210
bbbbbr @bbbbbr.bsky.social · 15/09/2026
Love it, great stuff!
000
bbbbbr @bbbbbr.bsky.social · 14/09/2026
Can't guess, but cool to see so many cards!
000
bbbbbr @bbbbbr.bsky.social · 13/09/2026
Looking back, this project took 2 years to finish with many unmotivated interludes.😅 The most enjoyable part was figuring out the asm code and labeling it, an oddly relaxing and zen-like activity. Satisfying when guesses turn out true. Source btw github.com/bbbbbr/megad...
061
bbbbbr @bbbbbr.bsky.social · 12/09/2026
Petris Title and Settings screens progress on #CasioLoopy. Two layers of parallax semi-transparent clouds and sine text wiggle. Settings logic came over with minor changes. With more #gbdk api compat done porting is going faster. Turning out to be a pleasant console to dev on. #retrogaming #loopy
0123
bbbbbr @bbbbbr.bsky.social · 10/09/2026
What a classic. I remember reading about it on Obscure Handhelds (RIP), but never picked one up. Mismatched link though?
101
bbbbbr @bbbbbr.bsky.social · 10/09/2026
I'm somewhere in between, kind of a medium balance. I enjoy little flourishes and things that emphasize actions, but am not into too much idle animation and def not clock counting.
000
bbbbbr @bbbbbr.bsky.social · 10/09/2026
So many animations. Looking like it's going to be rather satisfying to play
110
bbbbbr @bbbbbr.bsky.social · 09/09/2026
Forgot alt text 🙃 Image1: Screenshot of a casio loopy console emulator showing a rainbow like rgb gradient image. Image2: Screenshot of a casio loopy console emulator showing a photograph of 3 colorful parrots sitting on a fence with a city street in the background.
030
bbbbbr @bbbbbr.bsky.social · 09/09/2026
Seen discussion scanline palette updates maybe possible too (like "hicolor" on GBC) plus rgb555 range. Looking forward to trying that eventually. Not yet sure how many colors could be updated and whether sprites on a line would reduce that. Tradeoff is more overhead vs none for blend once loaded.
000
bbbbbr @bbbbbr.bsky.social · 09/09/2026
Source code for the example project: github.com/bbbbbr/loopy...
github.com
GitHub - bbbbbr/loopy-homebrew-experiments at example/tilemap_8bpp_blend_rgb444
Casio Loopy homebrew experiment. Contribute to bbbbbr/loopy-homebrew-experiments development by creating an account on GitHub.
000
bbbbbr @bbbbbr.bsky.social · 09/09/2026
(From last week) ~Full RGB444 rendering on the #casio #loopy using blend mode. Hardware palette is 256 colors, but also has 2 "screen" layers that can be blended. So I put the Blue channel on one screen (1 pal) and Red X Green (15 pals) on the other. Output looks good! About 4k colors. #casioloopy
3142
bbbbbr @bbbbbr.bsky.social · 09/09/2026
Test ROM source at: github.com/bbbbbr/loopy... I have not yet taken the time to properly chartacterize how the 8 bit writes mangle the adjacent bytes, will probably return to that later.
github.com
GitHub - bbbbbr/loopy-homebrew-experiments at example/testrom_tilemap_vertlines_from_8bit_vram_access
Casio Loopy homebrew experiment. Contribute to bbbbbr/loopy-homebrew-experiments development by creating an account on GitHub.
000
bbbbbr @bbbbbr.bsky.social · 09/09/2026
Ran into glitches running port in progress on real loopy hardware. Issue was not present in the emulator. My mistake was loading tile data w/ 8 bit access, vram seems to require 16 bit access. 16 is faster anyway until I start using DMA. Made a small test ROM for that scenario. #casioloopy
Screenshot of the Petris title screen with vertical line glitches on hardwareComparison of the test rom output. On the left solid blue with solid red beneath it, this is failing. On the right, from hardware, is vertical bars of blue/black on the top and solid green beneath it. Screenshot of the Petris title screen with NO vertical line glitches on hardware
160
bbbbbr @bbbbbr.bsky.social · 09/09/2026
I saw on their license page a reference to tiledpalettequant. I wonder if they're running images through that, if so it could result in that kind of unpredictable output. But it could be something else in their pipeline too. Ideally they support optional fixed palettes (in image or external).
101
bbbbbr @bbbbbr.bsky.social · 08/09/2026
Congrats! It's been fun following the progress you've shared on the game along the way.
130
bbbbbr @bbbbbr.bsky.social · 04/09/2026
Nice, thank you!
000
bbbbbr @bbbbbr.bsky.social · 04/09/2026
Good advice! I forgot enirely since it was way upscaled on my screen and doesn't get mangled much in the post preview 😅
000
bbbbbr @bbbbbr.bsky.social · 04/09/2026
Wow! Image mangled by bluesky compression, shoulda posted it as 4x or something
100
bbbbbr @bbbbbr.bsky.social · 04/09/2026
A funny thing about porting from Game Boy to a console with a higher res screen is figuring out what to do with all the extra space. In this case playing around with a nicer font and more background on the options screen. Time and experience help too. Font is BoldPixels by @yukipixels.bsky.social
Screen shot of a game options screen a blue  background, some green bushes and ground, and brown beneath it. There is pink and yellow text at the top of the screen which has a color tinted drop shadow.
On the screen is the text repeated twice:
Type: Long Pet
Level: Normal
Screen shot of a Game Boy emulator showing an options screen with a blue background and some gradient at the top.
On the screen is the text:
Options
Type: Long Pet
Level: Normal
Music: Twilight
Start Game
2 Player Vs: Off
Hi Contrast: Off
Visual Hints: Off
151
bbbbbr @bbbbbr.bsky.social · 04/09/2026
Yeah, def wouldn't be a comfortable sized device for me, but could see it being nicely pocketable (ala Tad Boy Color) when used with the GB camera mini. More so if it's low priced like the FPGBC
010
bbbbbr @bbbbbr.bsky.social · 03/09/2026
You're off squeezin some juice out of the ol' sm83 😅 I love night shift too, but have a dangerous tendency to roll on into 3 or 4 am
220
bbbbbr @bbbbbr.bsky.social · 31/08/2026
Might work with the MiSTer GB core which had IG usb keyboard emulation support added to it, btw.
010
bbbbbr @bbbbbr.bsky.social · 31/08/2026
Made a demo/example implementation for supporting the IG usb keyboard adapter and shared a PR for it (only added input for the main GRID page as a starter). Was fun to try out and pretty straightforward. TBD whether the dev is interested in something like that. github.com/Cirocular-Vl...
110
bbbbbr @bbbbbr.bsky.social · 30/08/2026
This is new to me, but seems like it could be cool combined with either the inside gadgets usb keyboard-to-gameboy serial link adapter, and/or on the megaduck laptop (since it has the same sound hardware as GB + keyboard)
110
bbbbbr @bbbbbr.bsky.social · 29/08/2026
The headphone jack just failed on the old phone I use as an mp3 player, using usb and bluetooth adapters is a such a downgrade. I'd roll back the last decade for plenty of other reasons, but might do it just for headphone jacks as standard alone.
010
bbbbbr @bbbbbr.bsky.social · 29/08/2026
Congrats! Also, is that a fruedian slip there? 😉
010
bbbbbr @bbbbbr.bsky.social · 28/08/2026
OK, it's been reliably doing the thing it's supposed to do. Put up a release and some binaries. github.com/bbbbbr/png2r...
github.com
Release png2reducedrgb 1.0.0 · bbbbbr/png2reducedrgb
png2reducedrgb version 1.0.0 Initial release. Console/command line utility for reducing the RGB color bit depth of png images and writing the results out to png, binary or c source files. png2reduc...
010
bbbbbr @bbbbbr.bsky.social · 28/08/2026
Put the repo online and ran some builds, will wait to make a binary release until I've used and tested it more. github.com/bbbbbr/png2r...
github.com
GitHub - bbbbbr/png2reducedrgb: Console/command line utility for reducing the RGB color bit depth of png images and writing the results out to png, binary or c source files
Console/command line utility for reducing the RGB color bit depth of png images and writing the results out to png, binary or c source files - bbbbbr/png2reducedrgb
110