Page 1 of 57
Sega Genesis Dev Kit (SGDK)
Posted: Thu Nov 30, 2006 10:00 pm
by Stef
Heya
SGDK (aka Sega Genesis Dev Kit) is a small development kit for the Sega Megadrive/Genesis.
It's divided in 2 parts :
- GCC compiler & tools binaries for Windows platform only (sorry for osx and linux users).
- the development library sources which provide facilities to develop on the Sega Megadrive/Genesis System.
You'll see that only required part of GCC are provided to keep the whole archive to a reasonable size (< 20 MB).
Updated version 1.60, download it here : https://github.com/Stephane-D/SGDK
You can find some tutorials about how use it in the Wiki section of project's page.
Free feel to post issue or request, also if you want to contribute in some way you can contact me on the project page
Don't hesitate to post bugs or feature request in the issues tracker :
https://github.com/Stephane-D/SGDK/issues
You can also support SGDK on its Patreon page :
https://www.patreon.com/SGDK
SGDK Discord server:
https://discord.gg/xmnBWQS
Thanks
Re: mini Genesis dev kit v0.1
Posted: Fri Dec 01, 2006 2:36 am
by plee
Nice...are you doing your own pixel draw routines?
Not everybody here is french
Posted: Fri Dec 01, 2006 12:46 pm
by Stef
Yep, i did my own draw routines. You can see them by downloading the mini devkit, libraries sources are included.
I'm using a 2 horizontal pixels based drawing methos because it's faster to manipulate byte than "half byte"
All code is in pure C, we can obtain better performance with ASM but imo that's not that bad for C code
Genesis isn't designed for bitmap drawing, I've to use an internal bitmap buffer in main memory then blit it to video memory in software because i need to convert the bitmap in tiles.
I did a brief translation in english about the contect of my blog, i can post it here but believe me, it's not really interesting
People just need the download links
Re: mini Genesis dev kit v0.1
Posted: Fri Dec 01, 2006 5:25 pm
by cdoty
plee wrote:
Not everybody here is french
Nope, at least two of us are from Texas (Houston area even)!
Re: mini Genesis dev kit v0.1
Posted: Fri Dec 01, 2006 7:34 pm
by Stef
cdoty wrote:plee wrote:
Not everybody here is french
Nope, at least two of us are from Texas (Houston area even)!
hehe
Don't worry, it was a joke, i'm not from one of these chauvinistic french
Posted: Fri Dec 01, 2006 10:56 pm
by cdoty
Stef wrote:Genesis isn't designed for bitmap drawing, I've to use an internal bitmap buffer in main memory then blit it to video memory in software because i need to convert the bitmap in tiles.
Are you double buffering the screen?
Do you DMA transfer the screen over multiple frames?
Re: mini Genesis dev kit v0.1
Posted: Fri Dec 01, 2006 10:59 pm
by cdoty
Stef wrote:Don't worry, it was a joke, i'm not from one of these chauvinistic french
I found it funny that two of us are from the Houston area.
Houston is now officially the center of the Genesis dev world!
I mean, look at sega.s included with SGCC and GenesisDev01, we're both credited in that file.
Re: mini Genesis dev kit v0.1
Posted: Sat Dec 02, 2006 6:00 am
by plee
cdoty wrote:Stef wrote:Don't worry, it was a joke, i'm not from one of these chauvinistic french
I found it funny that two of us are from the Houston area.
Houston is now officially the center of the Genesis dev world!
I mean, look at sega.s included with SGCC and GenesisDev01, we're both credited in that file.
Posted: Sat Dec 02, 2006 6:03 am
by plee
Stef wrote:Yep, i did my own draw routines. You can see them by downloading the mini devkit, libraries sources are included.
I'm using a 2 horizontal pixels based drawing methos because it's faster to manipulate byte than "half byte"
All code is in pure C, we can obtain better performance with ASM but imo that's not that bad for C code
Genesis isn't designed for bitmap drawing, I've to use an internal bitmap buffer in main memory then blit it to video memory in software because i need to convert the bitmap in tiles.
I did a brief translation in english about the contect of my blog, i can post it here but believe me, it's not really interesting
People just need the download links
Before I lost the code, I did a line/pixel draw by manipulating the tile data memory directly. So I'm wondering would that be faster or not
Posted: Sat Dec 02, 2006 12:13 pm
by Stef
cdoty wrote:Stef wrote:Genesis isn't designed for bitmap drawing, I've to use an internal bitmap buffer in main memory then blit it to video memory in software because i need to convert the bitmap in tiles.
Are you double buffering the screen?
Do you DMA transfer the screen over multiple frames?
That's not a real "double buffer", you can see it as a main memory buffer which is blitted to video memory each time. I can add a double buffer with a sort of "asynchrone blit" but that will use almost all the main memory :-/
I can't use DMA as i need to rearrange the bitmap buffer in tile. To be more exact, i can use DMA by using some tricks but i need to do a lot of DMA transfert and the total amount of data transfered is 2 time the size transfered in software. Finally, that's not faster than doing a good software transfert.
Posted: Sat Dec 02, 2006 12:20 pm
by Stef
plee wrote:Stef wrote:Yep, i did my own draw routines. You can see them by downloading the mini devkit, libraries sources are included.
I'm using a 2 horizontal pixels based drawing methos because it's faster to manipulate byte than "half byte"
All code is in pure C, we can obtain better performance with ASM but imo that's not that bad for C code
Genesis isn't designed for bitmap drawing, I've to use an internal bitmap buffer in main memory then blit it to video memory in software because i need to convert the bitmap in tiles.
I did a brief translation in english about the contect of my blog, i can post it here but believe me, it's not really interesting
People just need the download links
Before I lost the code, I did a line/pixel draw by manipulating the tile data memory directly. So I'm wondering would that be faster or not
That all depend of the number of line or pixel you're drawing.
For a small number your method is faster, but if you want a real bitmap buffer you want to manipulate freely and a lot, i think it's better to use my method. As i'm doing some basic 3D rendering (with triangle fill), i just can't use your method.
Your method offers another important advantage : the VDP fill capability ! you can use it to clear your display buffer without any speed penality. On my side i need to :
- clear buffer
- do my draws
- blit the buffer
Posted: Sat Dec 02, 2006 1:47 pm
by plee
Stef wrote:plee wrote:Stef wrote:Yep, i did my own draw routines. You can see them by downloading the mini devkit, libraries sources are included.
I'm using a 2 horizontal pixels based drawing methos because it's faster to manipulate byte than "half byte"
All code is in pure C, we can obtain better performance with ASM but imo that's not that bad for C code
Genesis isn't designed for bitmap drawing, I've to use an internal bitmap buffer in main memory then blit it to video memory in software because i need to convert the bitmap in tiles.
I did a brief translation in english about the contect of my blog, i can post it here but believe me, it's not really interesting
People just need the download links
Before I lost the code, I did a line/pixel draw by manipulating the tile data memory directly. So I'm wondering would that be faster or not
That all depend of the number of line or pixel you're drawing.
For a small number your method is faster, but if you want a real bitmap buffer you want to manipulate freely and a lot, i think it's better to use my method. As i'm doing some basic 3D rendering (with triangle fill), i just can't use your method.
Your method offers another important advantage : the VDP fill capability ! you can use it to clear your display buffer without any speed penality. On my side i need to :
- clear buffer
- do my draws
- blit the buffer
Just curious... I like what you did with the lib!
Posted: Sat Dec 02, 2006 6:04 pm
by Stef
Posted: Wed Jan 10, 2007 10:34 pm
by Stef
New version of the mini devkit available.
Actually just some improvements in the library (new functions and bugfixes). Download the partic demo with sources included to have a basic example
Genesis Mini DevKit v0.2
Genesis Particules (sources & bin)
Have fun
Posted: Thu Jan 11, 2007 8:33 am
by TmEE co.(TM)
Can there be ASM stuff in your lib ?