GithubHelp home page GithubHelp logo

sega-dreamcast / kos-20050618 Goto Github PK

View Code? Open in Web Editor NEW

This project forked from darcagn/kos-20050618

1.0 0.0 0.0 3.37 MB

Vintage KallistiOS for Dreamcast from 2005-06-18

Shell 5.18% Makefile 94.82%

kos-20050618's Introduction

Vintage KallistiOS for Dreamcast (2005-06-18)

This repo contains a snapshot of KallistiOS and a kos-ports tree from 2005-06-18, and includes a script for building a matching toolchain on modern systems (with GCC 3.4.6, Newlib 1.12.0, and Binutils 2.41).

This is useful for compiling old Dreamcast homebrew codebases that used KallistiOS 1.x series.

By default, everything installs to /opt/toolchains/dc/kos-20050618 and the repo comes with a premade environ.sh script already set up for that path.

  • Initial dc-chain script is stored at /opt/toolchains/dc/kos-20050618/dc-chain
  • KallistiOS will be stored at /opt/toolchains/dc/kos-20050618/kos
  • kos-ports tree will be stored at /opt/toolchains/dc/kos-20050618/kos-ports
  • SH compiler will be stored at /opt/toolchains/dc/kos-20050618/sh-elf
  • ARM compiler will be stored at /opt/toolchains/dc/kos-20050618/arm-elf

Setup

Dependencies

If you have the dependencies from modern KallistiOS installed already, you should probably be OK here. See this article for more information on dependencies.

Download

Create /opt/toolchains/dc directory if it doesn't already exist

sudo mkdir -p /opt/toolchains/dc
sudo chmod -R 755 /opt/toolchains/dc
sudo chown -R $(id -u):$(id -g) /opt/toolchains/dc

Clone the git repo in place and unpack KallistiOS and kos-ports

cd /opt/toolchains/dc
git clone https://github.com/darcagn/kos-20050618.git
cd kos-20050618
tar jxf kos-snapshot-20050618.tar.bz2
tar jxf kos-ports-snapshot-20050618.tar.bz2

Install SH and ARM compilers

Enter the dc-chain builder script directory, download the necessary packages, and unpack files:

cd dc-chain
./download.sh
./unpack.sh

You can adjust the Makefile with a text editor now if you want to deviate from the standard settings.

Build the toolchain:

make

If successful, the /opt/toolchains/dc/kos-20050618 directory will contain the toolchains in sh-elf and arm-elf directories. If unsuccessful, check the dc-chain/logs directory for details.

Build KOS

Enter KOS directory and move environ.sh script into place:

cd /opt/toolchains/dc/kos-20050618/kos
mv ../environ.sh.sample environ.sh

You can adjust the environ.sh script with a text editor now if you want to deviate from the standard settings.

Set environment and build KallistiOS:

source environ.sh
make

Enter kos-ports directory and build kos-ports

cd ../kos-ports
make

Issues

  • utils/vqenc doesn't seem to compile on my system, but swapping this directory out with the modern KallistiOS version of utils/vqenc works fine.
  • A few examples don't seem to compile, but I haven't tried to troubleshoot yet.

Resources

DCEmulation Forums: Goldmine of Dreamcast development information and history
dreamcast.wiki: Large collection of tutorials and articles for beginners
Simulant Discord Chat: Home to the official Discord channel of KOS
IRC Channel: irc.libera.chat #dreamcastdev

kos-20050618's People

Contributors

darcagn avatar

Stargazers

Sean Clancy avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.