Metrowerks Codewarrior for Sega Saturn

Not finished yet but I thought I would share, for any one that wants to try it or is interested
Build: Alpha R1(WIP)
Todo:
Develop the Sega Saturn Debugger Plugin for interfacing with the Saturn
Develop the Sprite Viewer & BG Viewer tools for Debugging VDP
Write documentation for the Saturn Codewarrior Support, for Debugger & Targeting Saturn

You can get it here: Codewarrior for Saturn : Metrowerks : Free Download, Borrow, and Streaming : Internet Archive
CW_SATURN.png

cw_sh.png
 
  • Like
Reactions: vbt
So you've literally taken the Dreamcast version and renamed some files to "Saturn" and called it a day? I'm looking at the files in a hex editor and they're all clearly Dreamcast stuff and even referencing Katana libraries. So that's very concerning as you can't just distribute that. On top of that it's very deceptive to people thinking this is actually something Saturn related for homebrew only to find it's Dreamcast stuff with some lazy file renaming.
 
Dreamcast Plugins Support for IDE are removed, I just updated the upload now the runtime libs is now removed its fixed now. 🙂
It's just c standard libs, what you saw in header is build location, it just c standard lib and the source can be found in the other folder
Three versions of Codewarrior Exist for SuperH Arch:
SuperH for embedded systems
Dreamcast - like SuperH version but has plugins made by metrowerks & sega for supporting the dreamcast devkit debug hardware
Saturn - plugins made by me to support Sega Saturn hardware
 
Last edited:
So what's Saturn about it? Everything I'm seeing is just stuff that was made for Dreamcast but renamed. Even in your updated version. Looking at the library and binary files in a hex editor you can clearly see they're all still referring to Dreamcast stuff.
 
So what's Saturn about it? Everything I'm seeing is just stuff that was made for Dreamcast but renamed. Even in your updated version. Looking at the library and binary files in a hex editor you can clearly see they're all still referring to Dreamcast stuff.
Check the updated upload I just did, also dreamcast is pretty much just a addon to the sSuperH for embedded systems version of codewarrior it just had the debugger plugin for dreamcast and targeting dreamcast pdf doc pretty much
IDE is pretty much very customizable
 
Check the updated upload I just did, also dreamcast is pretty much just a addon to the sSuperH for embedded systems version of codewarrior it just had the debugger plugin for dreamcast and targeting dreamcast pdf doc pretty much
IDE is pretty much very customizable
I did download your updated version. I'm still seeing references to Dreamcast stuff. So again I ask what is Saturn specific about this? All the files in this Saturn Plugin are from 2001 and are clearly just the files for the Dreamcast version, just renamed as far as I can tell.
 
If you look in plugin folder you should see for SuperH, IDE Panel, etc.
They are used to work with the SuperH Toolchain and setup the IDE Panels and stuff.
They are pretty much from SuperH version but recompiled, not sure what file you looking at. All I see is metrowerks and C\C++ standard stuff.
When I said Plugins I mean I'm developing a new plugin to support the hardware for saturn so it can do debugging
Also the toolchain and SuperH plugins support the following targets: SH-1, SH2, SH2E, SH-3, SH-4
 
Does the plugin actually support the SH-2 variant the Saturn uses? What about other CPUs in the Saturn like the 68k? The SCU-DSP? The files in the plugin directory are again all from 2001. Are these actually compilers and linkers for the Saturn's SH2s or are they the Dreamcast SH4 compilers and linkers you're hoping will just work? Why would you even want to use those when we have far better compilers available today?

I'm also looking at the files in the Saturn Support folder and everything in there looks to be lifted straight from the Dreamcast codewarrior just renamed to Saturn.
 
Does the plugin actually support the SH-2 variant the Saturn uses? What about other CPUs in the Saturn like the 68k? The SCU-DSP? The files in the plugin directory are again all from 2001. Are these actually compilers and linkers for the Saturn's SH2s or are they the Dreamcast SH4 compilers and linkers you're hoping will just work? Why would you even want to use those when we have far better compilers available today?

I'm also looking at the files in the Saturn Support folder and everything in there looks to be lifted straight from the Dreamcast codewarrior just renamed to Saturn.
Support folder is just metrowerks c standard lib files and overlay lib for handling overlay modules
yes all you have to do in your new project is choose a target in this case you choose SH-2 in Code Generation->SH Processor and set Target CPU to SH-2. the command line tools contain the toolchain they haven't really changed just updated fixing bugs by metrowerks.
Just tested SH-2 compiling code and it does work 🙂
 
Support folder is just metrowerks c standard lib files and overlay lib for handling overlay modules
yes all you have to do in your new project is choose a target in this case you choose SH-2 in Code Generation->SH Processor and set Target CPU to SH-2. the command line tools contain the toolchain they haven't really changed just updated fixing bugs by metrowerks.
Just tested SH-2 compiling code and it does work 🙂
Does the code actually boot on the Saturn? How good is the compiler? As far as I can tell it's from 2001, so I can't imagine it being better than what we have with modern GCC.
 
Codewarrior is multi-platform so there are many version, so yes there is a 68k version it does support the 68000.
ARM Developer Suit 1.2(Codewarrior) is what I use for AICA ARM7DI code.
 
Codewarrior is multi-platform so there are many version, so yes there is a 68k version it does support the 68000.
ARM Developer Suit 1.2(Codewarrior) is what I use for AICA ARM7DI code.
Yes but you're claiming this is a Saturn version. So shouldn't it be able to support both? Secondly you didn't answer my question about if the code you compiled actually boots on Saturn. Everything I'm seeing in the directories is from 2001. So is this actually something for Saturn or is it just the Dreamcast version with things renamed as it appears to be?
 
Not quite because the plugin is replace for saturn support such as the debugger plugin for example
And Overlay lib is a bit diff for loading since it has to use saturn api to load it from the disc and store it in memory.
and a new doc for telling others how to target the saturn pdf doc.
Also there would be project startup templates for saturn and examples.
Saturn boot hasn't tested with compiled code yet I will need to make a sample demo to check it out.
 
So really we have no idea if this actually works and it's really just the Dreamcast version with files renamed. The Saturn PDF you included is an empty file that can't even be opened.
 
It's not really a dreamcast version cause dreamcast files are removed what remains is the superh plugins needed to work with toolchain.
and ofc it would work SH-2 opcodes are the same it not like it's a custom cpu like gecko\broadway.
compiler toolchain from superh version but updated with any bug fixes if exist.
 
It's not really a dreamcast version cause dreamcast files are removed what remains is the superh plugins needed to work with toolchain.
and ofc it would work SH-2 opcodes are the same it not like it's a custom cpu like gecko\broadway.
compiler toolchain from superh version but updated with any bug fixes if exist.
It is the Dreamcast version. You've just removed some files and renamed others. There's nothing Saturn specific about it.

And again, the Saturn's SH2 is not a standard SH2. It has additional features that did not come standard with the SH-2 such as a DMA features, a Division Unit, etc.
 
Back
Top