Sega Genesis Dev Kit (SGDK)

SGDK only sub forum

Moderator: Stef

Post Reply
Stef
Very interested
Posts: 3131
Joined: Thu Nov 30, 2006 9:46 pm
Location: France - Sevres
Contact:

Sega Genesis Dev Kit (SGDK)

Post by Stef » Thu Nov 30, 2006 10:00 pm

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 :D
Last edited by Stef on Wed Mar 18, 2015 3:05 pm, edited 69 times in total.

plee
Very interested
Posts: 66
Joined: Wed Nov 29, 2006 11:32 am
Location: Houston, Texas

Re: mini Genesis dev kit v0.1

Post by plee » Fri Dec 01, 2006 2:36 am

Stef wrote:Hello everyone :)

Here's the link of my blog... actually it's just dealing about genesis deving. You can find my small dev kit and a test rom using it :)
It's all french but seems we only have french people here except Mask of Destiny for now :p

http://stefda.spaces.live.com/blog/

Here're links for direct download :
http://gens.consolemul.com/download/tem ... sDev01.zip
http://gens.consolemul.com/download/temp/gencube3D.zip

let's have fun and nice deving !
Nice...are you doing your own pixel draw routines?

Not everybody here is french :D

Stef
Very interested
Posts: 3131
Joined: Thu Nov 30, 2006 9:46 pm
Location: France - Sevres
Contact:

Post by Stef » Fri Dec 01, 2006 12:46 pm

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 ;)
Last edited by Stef on Fri Dec 01, 2006 7:31 pm, edited 1 time in total.

cdoty
Very interested
Posts: 117
Joined: Wed Nov 29, 2006 2:54 pm
Location: Houston, TX
Contact:

Re: mini Genesis dev kit v0.1

Post by cdoty » Fri Dec 01, 2006 5:25 pm

plee wrote: Not everybody here is french :D
Nope, at least two of us are from Texas (Houston area even)!

Stef
Very interested
Posts: 3131
Joined: Thu Nov 30, 2006 9:46 pm
Location: France - Sevres
Contact:

Re: mini Genesis dev kit v0.1

Post by Stef » Fri Dec 01, 2006 7:34 pm

cdoty wrote:
plee wrote: Not everybody here is french :D
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 ;)

cdoty
Very interested
Posts: 117
Joined: Wed Nov 29, 2006 2:54 pm
Location: Houston, TX
Contact:

Post by cdoty » Fri Dec 01, 2006 10:56 pm

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?

cdoty
Very interested
Posts: 117
Joined: Wed Nov 29, 2006 2:54 pm
Location: Houston, TX
Contact:

Re: mini Genesis dev kit v0.1

Post by cdoty » Fri Dec 01, 2006 10:59 pm

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.

plee
Very interested
Posts: 66
Joined: Wed Nov 29, 2006 11:32 am
Location: Houston, Texas

Re: mini Genesis dev kit v0.1

Post by plee » Sat Dec 02, 2006 6:00 am

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.


8)

plee
Very interested
Posts: 66
Joined: Wed Nov 29, 2006 11:32 am
Location: Houston, Texas

Post by plee » Sat Dec 02, 2006 6:03 am

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 :?:

Stef
Very interested
Posts: 3131
Joined: Thu Nov 30, 2006 9:46 pm
Location: France - Sevres
Contact:

Post by Stef » Sat Dec 02, 2006 12:13 pm

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.

Stef
Very interested
Posts: 3131
Joined: Thu Nov 30, 2006 9:46 pm
Location: France - Sevres
Contact:

Post by Stef » Sat Dec 02, 2006 12:20 pm

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

plee
Very interested
Posts: 66
Joined: Wed Nov 29, 2006 11:32 am
Location: Houston, Texas

Post by plee » Sat Dec 02, 2006 1:47 pm

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! :D

Stef
Very interested
Posts: 3131
Joined: Thu Nov 30, 2006 9:46 pm
Location: France - Sevres
Contact:

Post by Stef » Sat Dec 02, 2006 6:04 pm

;)

Stef
Very interested
Posts: 3131
Joined: Thu Nov 30, 2006 9:46 pm
Location: France - Sevres
Contact:

Post by Stef » Wed Jan 10, 2007 10:34 pm

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 :D

TmEE co.(TM)
Very interested
Posts: 2440
Joined: Tue Dec 05, 2006 1:37 pm
Location: Estonia, Rapla City
Contact:

Post by TmEE co.(TM) » Thu Jan 11, 2007 8:33 am

Can there be ASM stuff in your lib ?
Mida sa loed ? Nagunii aru ei saa ;)
http://www.tmeeco.eu
Files of all broken links and images of mine are found here : http://www.tmeeco.eu/FileDen

Post Reply