{"id":15715814,"url":"https://github.com/dc-swat/dreamshell","last_synced_at":"2025-05-15T17:03:27.602Z","repository":{"id":10957013,"uuid":"13268848","full_name":"DC-SWAT/DreamShell","owner":"DC-SWAT","description":"Operating system for the Sega Dreamcast","archived":false,"fork":false,"pushed_at":"2025-05-12T11:16:28.000Z","size":105225,"stargazers_count":478,"open_issues_count":3,"forks_count":60,"subscribers_count":47,"default_branch":"master","last_synced_at":"2025-05-12T12:29:46.523Z","etag":null,"topics":["bios","bootloader","c","cpp","dreamcast","driver","embedded","emulator","filesystem","firmware","homebrew","iso","loader","lua","operating-system","sega","sega-dreamcast","sh4","shell","xml"],"latest_commit_sha":null,"homepage":"http://www.dc-swat.ru","language":"C","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/DC-SWAT.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2013-10-02T10:58:30.000Z","updated_at":"2025-05-12T11:16:32.000Z","dependencies_parsed_at":"2024-10-24T12:58:49.151Z","dependency_job_id":"9df2ad2e-9bb8-4a78-b35e-5d9b8faebdf9","html_url":"https://github.com/DC-SWAT/DreamShell","commit_stats":{"total_commits":600,"total_committers":14,"mean_commits":"42.857142857142854","dds":"0.20166666666666666","last_synced_commit":"82231ab5c14ff6e8658aca2917a7d65d792af700"},"previous_names":[],"tags_count":15,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DC-SWAT%2FDreamShell","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DC-SWAT%2FDreamShell/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DC-SWAT%2FDreamShell/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/DC-SWAT%2FDreamShell/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/DC-SWAT","download_url":"https://codeload.github.com/DC-SWAT/DreamShell/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254384937,"owners_count":22062421,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bios","bootloader","c","cpp","dreamcast","driver","embedded","emulator","filesystem","firmware","homebrew","iso","loader","lua","operating-system","sega","sega-dreamcast","sh4","shell","xml"],"created_at":"2024-10-03T21:43:09.871Z","updated_at":"2025-05-15T17:03:22.592Z","avatar_url":"https://github.com/DC-SWAT.png","language":"C","readme":"DreamShell\n==========\n\nThe Dreamshell is the operating system for the Sega Dreamcast based on the KallistiOS kernel.\nIt has a dynamic loadable modular system and  interface for creating applications with XML UI and both C/C++ and Lua script on.\nYou can see examples in ready-made applications and modules, drivers for various devices, formats and interfaces. Examples for audio and video decoding, compression, packaging, binding, network, emulation, scripts and more. From hardcore low-level assembler to high-level applications.\nThere are also large subproject is the ISO Loader, which contains emulation of BIOS system calls, CDDA playback and VMU, also it can hooking interrupts for various SDKs and more.\n\n\n## Build\n\n### Setup environment\n##### Packages\n```console\nsudo apt update\nsudo apt install -y gawk patch bzip2 tar make cmake pkg-config\nsudo apt install -y gettext wget bison flex sed meson ninja-build\nsudo apt install -y build-essential diffutils curl python3 rake\nsudo apt install -y genisoimage squashfs-tools texinfo git\nsudo apt install -y libgmp-dev libmpfr-dev libmpc-dev libelf-dev libisofs-dev\nsudo apt install -y libpng-dev libjpeg-dev liblzo2-dev liblua5.2-dev\ncd /tmp\ngit clone https://github.com/LuaDist/tolua.git\ncd /tmp/tolua \u0026\u0026 mkdir build \u0026\u0026 cd ./build\ncmake ../ \u0026\u0026 make \u0026\u0026 sudo make install\n```\n##### Code\n```console\nsudo mkdir -p /usr/local/dc/kos\nsudo chown -R $(id -u):$(id -g) /usr/local/dc\ncd /usr/local/dc/kos\ngit clone https://github.com/KallistiOS/kos-ports.git\ngit clone https://github.com/KallistiOS/KallistiOS.git kos\ncd /usr/local/dc/kos/kos\ngit clone https://github.com/DC-SWAT/DreamShell.git ds\ngit checkout `cat ds/sdk/doc/KallistiOS.txt`\ncp ds/sdk/toolchain/environ.sh environ.sh\ncp ds/sdk/toolchain/patches/*.diff utils/dc-chain/patches\n```\n##### Toolchain\n```console\nsudo mkdir -p /opt/toolchains/dc\nsudo chown -R $(id -u):$(id -g) /opt/toolchains/dc\ncd /usr/local/dc/kos/kos/utils/dc-chain\ncp Makefile.default.cfg Makefile.cfg\nmake\n```\n##### SDK\n```console\ncd /usr/local/dc/kos/kos\nsource ./environ.sh\nmake \u0026\u0026 cd ../kos-ports \u0026\u0026 ./utils/build-all.sh\ncd ${KOS_BASE}/ds/sdk/bin/src \u0026\u0026 make \u0026\u0026 make install\ncd ${KOS_BASE}/ds\nln -nsf `which tolua` sdk/bin/tolua\nln -nsf `which mkisofs` sdk/bin/mkisofs\nln -nsf `which mksquashfs` sdk/bin/mksquashfs\n```\n\n### Use environment\n##### for each new terminal type:\n```console\ncd /usr/local/dc/kos/kos/ds \u0026\u0026 source ../environ.sh\n```\n\n### Build code\n##### Full build\n```console\nmake build\n```\n##### Full clean\n```console\nmake clean-all\n```\n##### Make release package\n```console\nmake release\n```\n##### Update code from GitHub\n```console\nmake update\n```\n##### Update code from GitHub and re-build\n```console\nmake update-build\n```\n##### Re-build toochain (if updated)\n```console\nmake toolchain\n```\n##### Core and libraries only\n```console\nmake\n```\n##### Modules, applications and commands only\n```console\ncd ${KOS_BASE}/ds/modules \u0026\u0026 make\ncd ${KOS_BASE}/ds/commands \u0026\u0026 make\ncd ${KOS_BASE}/ds/applications \u0026\u0026 make\n```\n##### Firmwares only\n```console\ncd ${KOS_BASE}/ds/firmware/bootloader \u0026\u0026 make \u0026\u0026 make release\ncd ${KOS_BASE}/ds/firmware/isoldr \u0026\u0026 make \u0026\u0026 make install\n```\n\n### Running\n- dc-tool-ip: `make run`\n- dc-tool-serial: `make run-serial`\n- lxdream emulator: `make lxdream`\n- nulldc emulator: `make nulldc`\n- flycast emulator: `make flycast`\n- make cdi image: `make cdi`\n\n## Links\n- Website: http://www.dc-swat.ru/ \n- Forum: http://www.dc-swat.ru/forum/ \n- Donate: http://www.dc-swat.ru/page/donate/\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdc-swat%2Fdreamshell","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdc-swat%2Fdreamshell","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdc-swat%2Fdreamshell/lists"}