https://github.com/framebuffers/segacd-gds
https://github.com/framebuffers/segacd-gds
Last synced: 15 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/framebuffers/segacd-gds
- Owner: Framebuffers
- Created: 2025-01-01T23:31:20.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2025-09-10T03:47:32.000Z (10 months ago)
- Last Synced: 2025-11-21T19:03:30.857Z (7 months ago)
- Language: JavaScript
- Size: 29.1 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# The Sega CD BIOS, but in Godot
(C) 2025 Framebuffer
Released under MIT licence.
This is made just so I can learn GDScript *and* 2D nodes at the same time.
as well as to brush up my skills on 2D transforms.
## 📝 The brief
This project aims to recreate the BIOS of the Sega CD addon for the
MegaDrive/Genesis console from 1991.
### 📼 References
## 📋 Definition
The Sega CD has 3 different regions, out of which there's about 30 or so variations
of the same couple transforms.
- Translate through the screen following a path.
- Jump in front of one another.
- Rotation
- Squish
- Shear
- Scaling
- Create clones of itself
- Transform using a pivot as a point of reference.
- Orbit
- Palette swap
All of these can be recreated using the same tools found in Godot's transformations.
For this, effects used will be a mix of both NTSC-U, NTSC-J and PAL; out of all
varsions released (and available to watch and learn their patterns from).
## 📺 Viewports
We want to get thet *very crunchy* look for the screen. For this:
- Everything will be rendered at a smaller scale, 320x224, like the OG console.
- The final output will be scaled to the final player screen's resolution using nearest neighbor scaling.
- Scaling will be done using only whole numbers.
- The Viewport for the animated screen will *always* keep the same position relative to the screen.
- Any cropping will be done to the black borders, obviously taking care the text is not cropped.
## 🎵 Music
Well, this one is self explanatory. It autoplays at start and loops until start is pressed.
## 📂 File structure
This project is comprised of:
- `main.gd/tscn`:
- Acts as your average singleton in Godot.
- Contains all the common transforms.
- Basically runs the main loop.
- `logo_small.gd/tscn`: Attached to the smaller logo.
- Anything specific to that scene goes here.
- `logo_large.gd/tscn`: Attached to the larger logo.
- Anything specific to that scene goes here.
- `user_interface.gd/tscn`: Control node for the UI overlay.
- `[resources]`: Any sprite, sound file or external resource goes here.
## 🎮 Controls
Just the start button to continue to another thing. Everything starts on its own.
## ♥️ end
well, wish me luck, i guess.
-frame