You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(35) |
Dec
(2) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(37) |
Feb
(10) |
Mar
|
Apr
(2) |
May
(17) |
Jun
(1) |
Jul
(14) |
Aug
(14) |
Sep
(4) |
Oct
|
Nov
(14) |
Dec
(4) |
2005 |
Jan
(6) |
Feb
|
Mar
|
Apr
(6) |
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
(92) |
Dec
(12) |
2006 |
Jan
(3) |
Feb
(4) |
Mar
|
Apr
(5) |
May
(3) |
Jun
(15) |
Jul
(3) |
Aug
(1) |
Sep
(29) |
Oct
(1) |
Nov
(6) |
Dec
(5) |
2007 |
Jan
(2) |
Feb
(2) |
Mar
|
Apr
(3) |
May
(14) |
Jun
(2) |
Jul
(16) |
Aug
(73) |
Sep
(12) |
Oct
(9) |
Nov
(27) |
Dec
(3) |
2008 |
Jan
(4) |
Feb
(4) |
Mar
(3) |
Apr
(8) |
May
(23) |
Jun
(4) |
Jul
(1) |
Aug
(3) |
Sep
(7) |
Oct
(5) |
Nov
(1) |
Dec
(1) |
2009 |
Jan
|
Feb
(10) |
Mar
|
Apr
(4) |
May
(4) |
Jun
(10) |
Jul
|
Aug
(1) |
Sep
|
Oct
(7) |
Nov
|
Dec
(1) |
2010 |
Jan
|
Feb
(1) |
Mar
|
Apr
(6) |
May
|
Jun
(3) |
Jul
(11) |
Aug
(1) |
Sep
|
Oct
(15) |
Nov
(1) |
Dec
(5) |
2011 |
Jan
(4) |
Feb
(1) |
Mar
(6) |
Apr
|
May
(22) |
Jun
|
Jul
(8) |
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
(2) |
2012 |
Jan
|
Feb
(10) |
Mar
(1) |
Apr
(6) |
May
(27) |
Jun
(48) |
Jul
(30) |
Aug
(4) |
Sep
|
Oct
(3) |
Nov
(1) |
Dec
(11) |
2013 |
Jan
(4) |
Feb
(7) |
Mar
(6) |
Apr
(18) |
May
(28) |
Jun
(20) |
Jul
|
Aug
(4) |
Sep
(1) |
Oct
(1) |
Nov
(2) |
Dec
(7) |
2014 |
Jan
(3) |
Feb
(2) |
Mar
(4) |
Apr
(9) |
May
(11) |
Jun
(10) |
Jul
|
Aug
(18) |
Sep
(12) |
Oct
(17) |
Nov
(10) |
Dec
(16) |
2015 |
Jan
(5) |
Feb
(1) |
Mar
(5) |
Apr
(4) |
May
(28) |
Jun
(2) |
Jul
|
Aug
|
Sep
(6) |
Oct
|
Nov
(2) |
Dec
(1) |
2016 |
Jan
(14) |
Feb
|
Mar
(3) |
Apr
|
May
|
Jun
(3) |
Jul
(4) |
Aug
(4) |
Sep
(1) |
Oct
(1) |
Nov
|
Dec
(1) |
2017 |
Jan
(11) |
Feb
|
Mar
(21) |
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
(1) |
2018 |
Jan
|
Feb
|
Mar
(1) |
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
(2) |
Sep
(4) |
Oct
(4) |
Nov
|
Dec
(1) |
2019 |
Jan
(1) |
Feb
|
Mar
|
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
(13) |
Sep
(4) |
Oct
|
Nov
|
Dec
|
2020 |
Jan
(10) |
Feb
(9) |
Mar
(5) |
Apr
(4) |
May
(3) |
Jun
(18) |
Jul
(4) |
Aug
(2) |
Sep
(20) |
Oct
(2) |
Nov
|
Dec
|
2021 |
Jan
|
Feb
|
Mar
|
Apr
(2) |
May
(1) |
Jun
(2) |
Jul
(1) |
Aug
(2) |
Sep
|
Oct
|
Nov
|
Dec
(2) |
2022 |
Jan
(1) |
Feb
(2) |
Mar
(2) |
Apr
(1) |
May
|
Jun
|
Jul
|
Aug
(5) |
Sep
|
Oct
(1) |
Nov
|
Dec
(1) |
2023 |
Jan
(10) |
Feb
(7) |
Mar
(29) |
Apr
(31) |
May
(29) |
Jun
(34) |
Jul
(3) |
Aug
(24) |
Sep
(22) |
Oct
(10) |
Nov
(38) |
Dec
(27) |
2024 |
Jan
(15) |
Feb
(8) |
Mar
(4) |
Apr
(20) |
May
(33) |
Jun
(18) |
Jul
(15) |
Aug
(23) |
Sep
(26) |
Oct
(32) |
Nov
(6) |
Dec
(4) |
2025 |
Jan
(7) |
Feb
(1) |
Mar
(1) |
Apr
(4) |
May
(46) |
Jun
(19) |
Jul
(22) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: darcagn <da...@us...> - 2023-07-27 14:03:14
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "A pseudo Operating System for the Dreamcast.". The branch, master has been updated via cddc9555d0895bfc940b151f4572c7c3019fee5f (commit) via 48f852b7fcf949d081d848ff661bb28b545ba5e2 (commit) via 30f14c33e325f169d2f53b197cd8e389b7b2f9bc (commit) via 536f76ea10586088ed8b26cc3973d15656bc0742 (commit) from 228b0c04d51cffac0c277dde7cf781c8dde43b32 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit cddc9555d0895bfc940b151f4572c7c3019fee5f Merge: 48f852b 536f76e Author: darcagn <da...@pr...> Date: Thu Jul 27 09:02:28 2023 -0500 Merge pull request #255 from KallistiOS/gcc-13.2.0 Add patches and update testing configuration for GCC 13.2.0 commit 48f852b7fcf949d081d848ff661bb28b545ba5e2 Merge: 228b0c0 30f14c3 Author: Lawrence Sebald <ljs...@us...> Date: Sun Jul 23 09:10:33 2023 -0400 Merge pull request #254 from KallistiOS/gdb-13.2 Update GDB to 13.2 for testing configuration commit 30f14c33e325f169d2f53b197cd8e389b7b2f9bc Author: darcagn <da...@pr...> Date: Thu Jul 20 16:51:27 2023 -0500 Update GDB to 13.2 for testing configuration commit 536f76ea10586088ed8b26cc3973d15656bc0742 Author: darc <da...@pr...> Date: Thu Jul 20 15:49:04 2023 -0500 Add patches and update testing configuration for GCC 13.2.0 ----------------------------------------------------------------------- Summary of changes: utils/dc-chain/README.md | 2 +- utils/dc-chain/config.mk.testing.sample | 4 +- .../{gcc-13.1.0-kos.diff => gcc-13.2.0-kos.diff} | 12 +++--- .../{gcc-13.1.0-kos.diff => gcc-13.2.0-kos.diff} | 48 +++++++++++----------- 4 files changed, 33 insertions(+), 33 deletions(-) copy utils/dc-chain/patches/arm-Darwin/{gcc-13.1.0-kos.diff => gcc-13.2.0-kos.diff} (65%) copy utils/dc-chain/patches/{gcc-13.1.0-kos.diff => gcc-13.2.0-kos.diff} (74%) diff --git a/utils/dc-chain/README.md b/utils/dc-chain/README.md index d645a82..d627b98 100644 --- a/utils/dc-chain/README.md +++ b/utils/dc-chain/README.md @@ -104,7 +104,7 @@ without problems. Working **GCC** and **Newlib** version combinations are: -- GCC `13.1.0` with Newlib `4.3.0` for `sh-elf` and GCC `8.5.0` for `arm-eabi` +- GCC `13.2.0` with Newlib `4.3.0` for `sh-elf` and GCC `8.5.0` for `arm-eabi` (**testing**; the most modern combination); - GCC `9.3.0` with Newlib `3.3.0` for `sh-elf` and GCC `8.4.0` for `arm-eabi` (**stable**; the most widely used, widely tested combination); diff --git a/utils/dc-chain/config.mk.testing.sample b/utils/dc-chain/config.mk.testing.sample index 62e8553..db916a6 100644 --- a/utils/dc-chain/config.mk.testing.sample +++ b/utils/dc-chain/config.mk.testing.sample @@ -18,9 +18,9 @@ # Toolchain versions for SH sh_binutils_ver=2.40 -sh_gcc_ver=13.1.0 +sh_gcc_ver=13.2.0 newlib_ver=4.3.0.20230120 -gdb_ver=13.1 +gdb_ver=13.2 # Tarball extensions to download for SH sh_binutils_download_type=xz diff --git a/utils/dc-chain/patches/arm-Darwin/gcc-13.1.0-kos.diff b/utils/dc-chain/patches/arm-Darwin/gcc-13.2.0-kos.diff similarity index 65% copy from utils/dc-chain/patches/arm-Darwin/gcc-13.1.0-kos.diff copy to utils/dc-chain/patches/arm-Darwin/gcc-13.2.0-kos.diff index 31f634f..f2fd374 100644 --- a/utils/dc-chain/patches/arm-Darwin/gcc-13.1.0-kos.diff +++ b/utils/dc-chain/patches/arm-Darwin/gcc-13.2.0-kos.diff @@ -1,6 +1,6 @@ -diff --color -ruN gcc-13.1.0/gcc/config/host-darwin.cc gcc-13.1.0-kos/gcc/config/host-darwin.cc ---- gcc-13.1.0/gcc/config/host-darwin.cc 2023-03-11 14:18:10 -+++ gcc-13.1.0-kos/gcc/config/host-darwin.cc 2023-03-11 14:22:40 +diff --color -ruN gcc-13.2.0/gcc/config/host-darwin.cc gcc-13.2.0-kos/gcc/config/host-darwin.cc +--- gcc-13.2.0/gcc/config/host-darwin.cc 2023-03-11 14:18:10 ++++ gcc-13.2.0-kos/gcc/config/host-darwin.cc 2023-03-11 14:22:40 @@ -24,6 +24,10 @@ #include "diagnostic-core.h" #include "config/host-darwin.h" @@ -12,9 +12,9 @@ diff --color -ruN gcc-13.1.0/gcc/config/host-darwin.cc gcc-13.1.0-kos/gcc/config /* For Darwin (macOS only) platforms, without ASLR (PIE) enabled on the binaries, the following VM addresses are expected to be available. -diff --color -ruN gcc-13.1.0/gcc/config.host gcc-13.1.0-kos/gcc/config.host ---- gcc-13.1.0/gcc/config.host 2023-03-11 14:18:26 -+++ gcc-13.1.0-kos/gcc/config.host 2023-03-11 14:23:01 +diff --color -ruN gcc-13.2.0/gcc/config.host gcc-13.2.0-kos/gcc/config.host +--- gcc-13.2.0/gcc/config.host 2023-03-11 14:18:26 ++++ gcc-13.2.0-kos/gcc/config.host 2023-03-11 14:23:01 @@ -93,8 +93,8 @@ case ${host} in *-darwin*) diff --git a/utils/dc-chain/patches/gcc-13.1.0-kos.diff b/utils/dc-chain/patches/gcc-13.2.0-kos.diff similarity index 74% copy from utils/dc-chain/patches/gcc-13.1.0-kos.diff copy to utils/dc-chain/patches/gcc-13.2.0-kos.diff index 0b7f0ab..109d0c1 100644 --- a/utils/dc-chain/patches/gcc-13.1.0-kos.diff +++ b/utils/dc-chain/patches/gcc-13.2.0-kos.diff @@ -1,6 +1,6 @@ -diff --color -ruN gcc-13.1.0/gcc/config/sh/sh-c.cc gcc-13.1.0-kos/gcc/config/sh/sh-c.cc ---- gcc-13.1.0/gcc/config/sh/sh-c.cc 2023-06-04 20:48:46.612552162 -0500 -+++ gcc-13.1.0-kos/gcc/config/sh/sh-c.cc 2023-06-04 20:49:03.486606055 -0500 +diff --color -ruN gcc-13.2.0/gcc/config/sh/sh-c.cc gcc-13.2.0-kos/gcc/config/sh/sh-c.cc +--- gcc-13.2.0/gcc/config/sh/sh-c.cc 2023-06-04 20:48:46.612552162 -0500 ++++ gcc-13.2.0-kos/gcc/config/sh/sh-c.cc 2023-06-04 20:49:03.486606055 -0500 @@ -141,4 +141,11 @@ cpp_define_formatted (pfile, "__SH_ATOMIC_MODEL_%s__", @@ -13,9 +13,9 @@ diff --color -ruN gcc-13.1.0/gcc/config/sh/sh-c.cc gcc-13.1.0-kos/gcc/config/sh/ + /* Toolchain supports setting up stack for 32MB */ + builtin_define ("__KOS_GCC_32MB__"); } -diff --color -ruN gcc-13.1.0/gcc/configure gcc-13.1.0-kos/gcc/configure ---- gcc-13.1.0/gcc/configure 2023-06-04 20:48:49.679561957 -0500 -+++ gcc-13.1.0-kos/gcc/configure 2023-06-04 20:49:03.488606061 -0500 +diff --color -ruN gcc-13.2.0/gcc/configure gcc-13.2.0-kos/gcc/configure +--- gcc-13.2.0/gcc/configure 2023-06-04 20:48:49.679561957 -0500 ++++ gcc-13.2.0-kos/gcc/configure 2023-06-04 20:49:03.488606061 -0500 @@ -13012,7 +13012,7 @@ target_thread_file='single' ;; @@ -25,9 +25,9 @@ diff --color -ruN gcc-13.1.0/gcc/configure gcc-13.1.0-kos/gcc/configure target_thread_file=${enable_threads} ;; *) -diff --color -ruN gcc-13.1.0/libgcc/config/sh/t-sh gcc-13.1.0-kos/libgcc/config/sh/t-sh ---- gcc-13.1.0/libgcc/config/sh/t-sh 2023-06-04 20:48:45.741549380 -0500 -+++ gcc-13.1.0-kos/libgcc/config/sh/t-sh 2023-06-04 20:49:03.488606061 -0500 +diff --color -ruN gcc-13.2.0/libgcc/config/sh/t-sh gcc-13.2.0-kos/libgcc/config/sh/t-sh +--- gcc-13.2.0/libgcc/config/sh/t-sh 2023-06-04 20:48:45.741549380 -0500 ++++ gcc-13.2.0-kos/libgcc/config/sh/t-sh 2023-06-04 20:49:03.488606061 -0500 @@ -23,6 +23,8 @@ $(LIB1ASMFUNCS_CACHE) LIB1ASMFUNCS_CACHE = _ic_invalidate _ic_invalidate_array @@ -37,9 +37,9 @@ diff --color -ruN gcc-13.1.0/libgcc/config/sh/t-sh gcc-13.1.0-kos/libgcc/config/ crt1.o: $(srcdir)/config/sh/crt1.S $(gcc_compile) -c $< -diff --color -ruN gcc-13.1.0/libgcc/configure gcc-13.1.0-kos/libgcc/configure ---- gcc-13.1.0/libgcc/configure 2023-06-04 20:48:45.787549527 -0500 -+++ gcc-13.1.0-kos/libgcc/configure 2023-06-04 20:49:03.489606065 -0500 +diff --color -ruN gcc-13.2.0/libgcc/configure gcc-13.2.0-kos/libgcc/configure +--- gcc-13.2.0/libgcc/configure 2023-06-04 20:48:45.787549527 -0500 ++++ gcc-13.2.0-kos/libgcc/configure 2023-06-04 20:49:03.489606065 -0500 @@ -5699,6 +5699,7 @@ tpf) thread_header=config/s390/gthr-tpf.h ;; vxworks) thread_header=config/gthr-vxworks.h ;; @@ -48,9 +48,9 @@ diff --color -ruN gcc-13.1.0/libgcc/configure gcc-13.1.0-kos/libgcc/configure mcf) thread_header=config/i386/gthr-mcf.h ;; esac -diff --color -ruN gcc-13.1.0/libobjc/configure gcc-13.1.0-kos/libobjc/configure ---- gcc-13.1.0/libobjc/configure 2023-06-04 20:48:49.902562670 -0500 -+++ gcc-13.1.0-kos/libobjc/configure 2023-06-04 20:49:03.489606065 -0500 +diff --color -ruN gcc-13.2.0/libobjc/configure gcc-13.2.0-kos/libobjc/configure +--- gcc-13.2.0/libobjc/configure 2023-06-04 20:48:49.902562670 -0500 ++++ gcc-13.2.0-kos/libobjc/configure 2023-06-04 20:49:03.489606065 -0500 @@ -2918,11 +2918,9 @@ cat confdefs.h - <<_ACEOF >conftest.$ac_ext @@ -63,9 +63,9 @@ diff --color -ruN gcc-13.1.0/libobjc/configure gcc-13.1.0-kos/libobjc/configure ; return 0; } -diff --color -ruN gcc-13.1.0/libobjc/Makefile.in gcc-13.1.0-kos/libobjc/Makefile.in ---- gcc-13.1.0/libobjc/Makefile.in 2023-06-04 20:48:49.901562666 -0500 -+++ gcc-13.1.0-kos/libobjc/Makefile.in 2023-06-04 20:49:03.490606068 -0500 +diff --color -ruN gcc-13.2.0/libobjc/Makefile.in gcc-13.2.0-kos/libobjc/Makefile.in +--- gcc-13.2.0/libobjc/Makefile.in 2023-06-04 20:48:49.901562666 -0500 ++++ gcc-13.2.0-kos/libobjc/Makefile.in 2023-06-04 20:49:03.490606068 -0500 @@ -308,14 +308,16 @@ $(srcdir)/aclocal.m4: @MAINT@ $(aclocal_deps) cd $(srcdir) && $(ACLOCAL) $(ACLOCAL_AMFLAGS) @@ -96,9 +96,9 @@ diff --color -ruN gcc-13.1.0/libobjc/Makefile.in gcc-13.1.0-kos/libobjc/Makefile mostlyclean: -$(LIBTOOL_CLEAN) rm -f libobjc$(libsuffix).la libobjc_gc$(libsuffix).la *.lo -diff --color -ruN gcc-13.1.0/libstdc++-v3/config/cpu/sh/atomicity.h gcc-13.1.0-kos/libstdc++-v3/config/cpu/sh/atomicity.h ---- gcc-13.1.0/libstdc++-v3/config/cpu/sh/atomicity.h 2023-06-04 20:48:46.047550357 -0500 -+++ gcc-13.1.0-kos/libstdc++-v3/config/cpu/sh/atomicity.h 2023-06-04 20:49:03.490606068 -0500 +diff --color -ruN gcc-13.2.0/libstdc++-v3/config/cpu/sh/atomicity.h gcc-13.2.0-kos/libstdc++-v3/config/cpu/sh/atomicity.h +--- gcc-13.2.0/libstdc++-v3/config/cpu/sh/atomicity.h 2023-06-04 20:48:46.047550357 -0500 ++++ gcc-13.2.0-kos/libstdc++-v3/config/cpu/sh/atomicity.h 2023-06-04 20:49:03.490606068 -0500 @@ -22,14 +22,40 @@ // see the files COPYING3 and COPYING.RUNTIME respectively. If not, see // <http://www.gnu.org/licenses/>. @@ -149,9 +149,9 @@ diff --color -ruN gcc-13.1.0/libstdc++-v3/config/cpu/sh/atomicity.h gcc-13.1.0-k + +_GLIBCXX_END_NAMESPACE_VERSION +} // namespace -diff --color -ruN gcc-13.1.0/libstdc++-v3/configure gcc-13.1.0-kos/libstdc++-v3/configure ---- gcc-13.1.0/libstdc++-v3/configure 2023-06-04 20:48:46.398551478 -0500 -+++ gcc-13.1.0-kos/libstdc++-v3/configure 2023-06-04 20:49:03.493606077 -0500 +diff --color -ruN gcc-13.2.0/libstdc++-v3/configure gcc-13.2.0-kos/libstdc++-v3/configure +--- gcc-13.2.0/libstdc++-v3/configure 2023-06-04 20:48:46.398551478 -0500 ++++ gcc-13.2.0-kos/libstdc++-v3/configure 2023-06-04 20:49:03.493606077 -0500 @@ -15809,6 +15809,7 @@ tpf) thread_header=config/s390/gthr-tpf.h ;; vxworks) thread_header=config/gthr-vxworks.h ;; hooks/post-receive -- A pseudo Operating System for the Dreamcast. |
From: darcagn <da...@us...> - 2023-07-14 18:47:09
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "A pseudo Operating System for the Dreamcast.". The branch, master has been updated via 228b0c04d51cffac0c277dde7cf781c8dde43b32 (commit) from 413df90b79485f3b86696af67cf145e5adea1a2e (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 228b0c04d51cffac0c277dde7cf781c8dde43b32 Author: Accelerator <mr....@gm...> Date: Fri Jul 14 20:45:30 2023 +0200 Formatting Fixes and Markdown Normalization in dc-chain Directory (#253) * triple backticks for blocks in dc-load markdown files * update macos doc ./cleanup.sh -> make clean * quick fix on format ----------------------------------------------------------------------- Summary of changes: utils/dc-chain/README.md | 18 +++++----- utils/dc-chain/doc/bsd/README.md | 60 ++++++++++++++++----------------- utils/dc-chain/doc/cygwin/README.md | 35 ++++++++++---------- utils/dc-chain/doc/linux/alpine.md | 54 +++++++++++++++--------------- utils/dc-chain/doc/linux/debian.md | 55 ++++++++++++++++--------------- utils/dc-chain/doc/macos/README.md | 54 +++++++++++++++--------------- utils/dc-chain/doc/mingw/README.md | 6 ++-- utils/dc-chain/doc/mingw/mingw-w64.md | 62 +++++++++++++++++------------------ utils/dc-chain/doc/mingw/mingw.md | 48 +++++++++++++-------------- utils/dc-chain/patches/README.md | 16 ++++----- 10 files changed, 205 insertions(+), 203 deletions(-) diff --git a/utils/dc-chain/README.md b/utils/dc-chain/README.md index 9a9c0ba..d645a82 100644 --- a/utils/dc-chain/README.md +++ b/utils/dc-chain/README.md @@ -273,9 +273,9 @@ Below you will find some generic instructions; you may find some specific instructions in the `./doc` directory for your environment. In the dc-chain directory, run (for **BSD**, please use `gmake` instead): - - make - +``` +make +``` This will build the ARM & SH4 toolchains. If you wish to only build the SH4 toolchain and just use the prebuilt KOS sound driver run: make build-sh4 @@ -289,9 +289,9 @@ If anything goes wrong, check the output in `logs/`. For the `sh-elf` toolchain, if you want to use the **GNU Debugger** (`gdb`), you can make it by entering: - - make gdb - +``` +make gdb +``` This will install `gdb` in the `sh-elf` toolchain. `gdb` is used with `dcload/dc-tool` programs, which are part of **KallistiOS** too, in order to do remote debugging of your **Dreamcast** programs. Please read the `dcload` @@ -300,9 +300,9 @@ documentation to learn more on this point. ### Removing all useless files After the toolchain compilation, you can cleanup everything by entering: - - make clean - +``` +make clean +``` This will save a lot of space by removing all unnecessary files. ## Final note diff --git a/utils/dc-chain/doc/bsd/README.md b/utils/dc-chain/doc/bsd/README.md index a471f97..ffbc996 100644 --- a/utils/dc-chain/doc/bsd/README.md +++ b/utils/dc-chain/doc/bsd/README.md @@ -18,9 +18,9 @@ do this before continuing reading the document. All the operations in this document should be executed with the `root` user. If you don't want to connect with the `root` user, another option is to install the `sudo` command by entering: - - pkg install sudo - +``` +pkg install sudo +``` In that case, you will need to add the `sudo` command before entering all the commands specified below. @@ -32,9 +32,9 @@ build the whole toolchains. ### Installation of required packages ### The packages below need to be installed: - - pkg install gcc gmake binutils texinfo bash libjpeg-turbo png libelf - +``` +pkg install gcc gmake binutils texinfo bash libjpeg-turbo png libelf +``` In **BSD** systems, the `make` is **NOT** the same as the **GNU Make** tool. Everything in the package needs `gmake`, you can't use `make` in **BSD** systems. @@ -45,9 +45,9 @@ needs `bash`, that's why it needs to be installed. ### Installation of additional packages ### These additional packages are required too: - - pkg install git subversion python2 - +``` +pkg install git subversion python2 +``` **Git** is needed right now, as **Subversion Client** and **Python 2** will be needed only when building `kos-ports`. But it's better to install these now. @@ -55,21 +55,21 @@ By the way you can check the installation success by entering something like `git --version`. This should returns something like `git version X.Y.Z`. A cool text editor should be useful too: - - pkg install nano - +``` +pkg install nano +``` Of course, this step is optional, you can use `vi` or something else if you want. ## Preparing the environment installation ## Enter the following to prepare **KallistiOS** and the toolchains: - - mkdir -p /opt/toolchains/dc/ - cd /opt/toolchains/dc/ - git clone git://git.code.sf.net/p/cadcdev/kallistios kos - git clone git://git.code.sf.net/p/cadcdev/kos-ports - +``` +mkdir -p /opt/toolchains/dc/ +cd /opt/toolchains/dc/ +git clone git://git.code.sf.net/p/cadcdev/kallistios kos +git clone git://git.code.sf.net/p/cadcdev/kos-ports +``` Everything is ready, now it's time to make the toolchains. ## Compilation ## @@ -86,35 +86,35 @@ the main `README.md` file at the root for more information. To make the toolchains, do the following: 1. Run `bash`, if not already done: - - bash - + ``` + bash + ``` 2. Navigate to the `dc-chain` directory by entering: cd /opt/toolchains/dc/kos/utils/dc-chain/ 3. Enter the following to start downloading and building toolchain: - - gmake - + ``` + gmake + ``` Now it's time to take a coffee as this process is really long: several hours will be needed to make the full toolchains! ### Making the GNU Debugger (gdb) ### If you want to install the **GNU Debugger** (`gdb`), just enter: - - gmake gdb - +``` +gmake gdb +``` This will install `sh-elf-gdb` and can be used to debug programs through `dc-load/dc-tool`. ### Removing all useless files ### After everything is done, you can cleanup all temporary files by entering: - - gmake clean - +``` +gmake clean +``` ## Next steps ## After following this guide, the toolchains should be ready. diff --git a/utils/dc-chain/doc/cygwin/README.md b/utils/dc-chain/doc/cygwin/README.md index 00c6900..fa32c51 100644 --- a/utils/dc-chain/doc/cygwin/README.md +++ b/utils/dc-chain/doc/cygwin/README.md @@ -81,11 +81,12 @@ whole environment to build the toolchains. file). 2. Enter the following to prepare **KallistiOS**: - - mkdir -p /opt/toolchains/dc/ - cd /opt/toolchains/dc/ - git clone git://git.code.sf.net/p/cadcdev/kallistios kos - git clone git://git.code.sf.net/p/cadcdev/kos-ports + ``` + mkdir -p /opt/toolchains/dc/ + cd /opt/toolchains/dc/ + git clone git://git.code.sf.net/p/cadcdev/kallistios kos + git clone git://git.code.sf.net/p/cadcdev/kos-ports + ``` Everything is ready, now it's time to make the toolchains. @@ -105,31 +106,31 @@ To make the toolchains, do the following: 1. Start the **Cygwin Terminal** if not already done. 2. Navigate to the `dc-chain` directory by entering: - - cd /opt/toolchains/dc/kos/utils/dc-chain/ - + ``` + cd /opt/toolchains/dc/kos/utils/dc-chain/ + ``` 3. Enter the following to start downloading and building toolchain: - - make - + ``` + make + ``` Now it's time to take a coffee as this process is really long: several hours will be needed to make the full toolchains! ### Making the GNU Debugger (gdb) ### If you want to install the **GNU Debugger** (`gdb`), just enter: - - make gdb - +``` +make gdb +``` This will install `sh-elf-gdb` and can be used to debug programs through `dc-load/dc-tool`. ### Removing all useless files ### After everything is done, you can cleanup all temporary files by entering: - - make clean - +``` +make clean +``` ## Next steps ## After following this guide, the toolchains should be ready. diff --git a/utils/dc-chain/doc/linux/alpine.md b/utils/dc-chain/doc/linux/alpine.md index 1d1bddb..2e9d14b 100644 --- a/utils/dc-chain/doc/linux/alpine.md +++ b/utils/dc-chain/doc/linux/alpine.md @@ -28,23 +28,23 @@ build the whole toolchains. ### Installation of required packages ### The packages below need to be installed: - - apk --update add build-base patch bash texinfo libjpeg-turbo-dev libpng-dev curl wget - +``` +apk --update add build-base patch bash texinfo libjpeg-turbo-dev libpng-dev curl wget +``` At this time of writing, the `libelf-dev` package was missing from the main repository, so you have to execute the following to install it: - - apk --update add libelf-dev --repository=http://dl-cdn.alpinelinux.org/alpine/v3.9/main - +``` +apk --update add libelf-dev --repository=http://dl-cdn.alpinelinux.org/alpine/v3.9/main +``` This may not be necessary depending if the `apk` repository was updated. Please keep in mind that you have to install the `libelf-dev` package. ### Installation of additional packages ### These additional packages are required too: - - apk --update add git python subversion - +``` +apk --update add git python subversion +``` **Git** is needed right now, as **Subversion Client** and **Python 2** will be needed only when building `kos-ports`. But it's better to install these now. @@ -54,12 +54,12 @@ By the way you can check the installation success by entering something like ## Preparing the environment installation ## Enter the following to prepare **KallistiOS** and the toolchains: - - mkdir -p /opt/toolchains/dc/ - cd /opt/toolchains/dc/ - git clone git://git.code.sf.net/p/cadcdev/kallistios kos - git clone git://git.code.sf.net/p/cadcdev/kos-ports - +``` +mkdir -p /opt/toolchains/dc/ +cd /opt/toolchains/dc/ +git clone git://git.code.sf.net/p/cadcdev/kallistios kos +git clone git://git.code.sf.net/p/cadcdev/kos-ports +``` Everything is ready, now it's time to make the toolchains. ## Compilation ## @@ -76,31 +76,31 @@ the main `README.md` file at the root for more information. To make the toolchains, do the following: 1. Navigate to the `dc-chain` directory by entering: - - cd /opt/toolchains/dc/kos/utils/dc-chain/ - + ``` + cd /opt/toolchains/dc/kos/utils/dc-chain/ + ``` 2. Enter the following to start downloading and building toolchain: - - make - + ``` + make + ``` Now it's time to take a coffee as this process is really long: several hours will be needed to make the full toolchains! ### Making the GNU Debugger (gdb) ### If you want to install the **GNU Debugger** (`gdb`), just enter: - - make gdb - +``` +make gdb +``` This will install `sh-elf-gdb` and can be used to debug programs through `dc-load/dc-tool`. ### Removing all useless files ### After everything is done, you can cleanup all temporary files by entering: - - ./cleanup.sh - +``` +./cleanup.sh +``` ## Next steps ## After following this guide, the toolchains should be ready. diff --git a/utils/dc-chain/doc/linux/debian.md b/utils/dc-chain/doc/linux/debian.md index 0e3762f..2dc95ce 100644 --- a/utils/dc-chain/doc/linux/debian.md +++ b/utils/dc-chain/doc/linux/debian.md @@ -27,24 +27,25 @@ build the whole toolchains. ### Update of your local installation ### The first thing to do is to update your local installation: - - apt-get update - apt-get upgrade -y - +``` +apt-get update +apt-get upgrade -y +``` This should update all the packages of the **Debian** environment. ### Installation of required packages ### The packages below need to be installed: - - apt-get install build-essential texinfo libjpeg-dev libpng-dev libelf-dev +``` +apt-get install build-essential texinfo libjpeg-dev libpng-dev libelf-dev +``` ### Installation of additional packages ### These additional packages are required too: - - apt-get install git subversion python - +``` +apt-get install git subversion python +``` **Git** is needed right now, as **Subversion Client** and **Python 2** will be needed only when building `kos-ports`. But it's better to install these now. @@ -54,12 +55,12 @@ By the way you can check the installation success by entering something like ## Preparing the environment installation ## Enter the following to prepare **KallistiOS** and the toolchains: - - mkdir -p /opt/toolchains/dc/ - cd /opt/toolchains/dc/ - git clone git://git.code.sf.net/p/cadcdev/kallistios kos - git clone git://git.code.sf.net/p/cadcdev/kos-ports - +``` +mkdir -p /opt/toolchains/dc/ +cd /opt/toolchains/dc/ +git clone git://git.code.sf.net/p/cadcdev/kallistios kos +git clone git://git.code.sf.net/p/cadcdev/kos-ports +``` Everything is ready, now it's time to make the toolchains. ## Compilation ## @@ -76,31 +77,31 @@ the main `README.md` file at the root for more information. To make the toolchains, do the following: 1. Navigate to the `dc-chain` directory by entering: - - cd /opt/toolchains/dc/kos/utils/dc-chain/ - + ``` + cd /opt/toolchains/dc/kos/utils/dc-chain/ + ``` 2. Enter the following to start downloading and building toolchain: - - make - + ``` + make + ``` Now it's time to take a coffee as this process is really long: several hours will be needed to make the full toolchains! ### Making the GNU Debugger (gdb) ### If you want to install the **GNU Debugger** (`gdb`), just enter: - - make gdb - +``` +make gdb +``` This will install `sh-elf-gdb` and can be used to debug programs through `dc-load/dc-tool`. ### Removing all useless files ### After everything is done, you can cleanup all temporary files by entering: - - make clean - +``` +make clean +``` ## Next steps ## After following this guide, the toolchains should be ready. diff --git a/utils/dc-chain/doc/macos/README.md b/utils/dc-chain/doc/macos/README.md index 35f86b7..abdb542 100644 --- a/utils/dc-chain/doc/macos/README.md +++ b/utils/dc-chain/doc/macos/README.md @@ -43,9 +43,9 @@ Please note, you can ignore these instructions below if you already have 1. Open a **Terminal**. 2. Then input: - - xcode-select --install - + ``` + xcode-select --install + ``` 3. When the window opens, click on the `Install` button, then click on the `Accept` button. @@ -64,30 +64,30 @@ here to fill this gap: 1. Open a **Terminal** window. 2. Execute the following: - - /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" - + ``` + /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" + ``` **Homebrew** is now installed. You can check if it's working by entering `brew --version`. ### Installation of required packages ### The packages below need to be installed: - - brew install libjpeg libpng libelf - +``` +brew install libjpeg libpng libelf +``` All the other required packages have already been installed, i.e. `git`, `svn` or `python`. ## Preparing the environment installation ## Enter the following to prepare **KallistiOS** and the toolchains: - - mkdir -p /opt/toolchains/dc/ - cd /opt/toolchains/dc/ - git clone git://git.code.sf.net/p/cadcdev/kallistios kos - git clone git://git.code.sf.net/p/cadcdev/kos-ports - +``` +mkdir -p /opt/toolchains/dc/ +cd /opt/toolchains/dc/ +git clone git://git.code.sf.net/p/cadcdev/kallistios kos +git clone git://git.code.sf.net/p/cadcdev/kos-ports +``` Everything is ready, now it's time to make the toolchains. ## Compilation ## @@ -104,31 +104,31 @@ the main `README.md` file at the root for more information. To make the toolchains, do the following: 1. Navigate to the `dc-chain` directory by entering: - - cd /opt/toolchains/dc/kos/utils/dc-chain/ - ...<truncated>... hooks/post-receive -- A pseudo Operating System for the Dreamcast. |
From: ljsebald <ljs...@us...> - 2023-07-06 21:39:06
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "A pseudo Operating System for the Dreamcast.". The branch, master has been updated via 413df90b79485f3b86696af67cf145e5adea1a2e (commit) via 89b530b659cc74c467a1b956f3051aecc1282975 (commit) from fa92fd20540f5560a976633bc394a286f272d9fd (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 413df90b79485f3b86696af67cf145e5adea1a2e Merge: fa92fd2 89b530b Author: Lawrence Sebald <ljs...@us...> Date: Thu Jul 6 17:37:58 2023 -0400 Merge pull request #252 from KallistiOS/make_clean Relocate dc-chain patch stamps to source directory commit 89b530b659cc74c467a1b956f3051aecc1282975 Author: darc <da...@pr...> Date: Tue Jun 27 19:24:56 2023 -0500 Relocate dc-chain patch stamps to source directory ----------------------------------------------------------------------- Summary of changes: utils/dc-chain/scripts/clean.mk | 5 +++-- utils/dc-chain/scripts/patch.mk | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/utils/dc-chain/scripts/clean.mk b/utils/dc-chain/scripts/clean.mk index 1175e29..15fe19c 100644 --- a/utils/dc-chain/scripts/clean.mk +++ b/utils/dc-chain/scripts/clean.mk @@ -7,12 +7,13 @@ clean: clean-archives clean-downloads clean-builds clean_patches_stamp +clean-keep-archives: clean-downloads clean-builds clean_patches_stamp + clean_patches_stamp: -@tmpdir=.tmp; \ if ! test -d "$${tmpdir}"; then \ mkdir "$${tmpdir}"; \ fi; \ - mv patch-*.stamp $${tmpdir} 2>/dev/null; \ mv $(stamp_gdb_download) $${tmpdir} 2>/dev/null; \ mv $(stamp_gdb_patch) $${tmpdir} 2>/dev/null; \ rm -f *.stamp; \ @@ -30,7 +31,7 @@ clean-builds: clean_patches_stamp -rm -rf build-$(gdb_name) clean-downloads: clean-gdb-sources clean-arm-sources clean-sh-sources - + clean-gdb-sources: -rm -rf $(gdb_name) diff --git a/utils/dc-chain/scripts/patch.mk b/utils/dc-chain/scripts/patch.mk index 71f04d6..8f86ab4 100644 --- a/utils/dc-chain/scripts/patch.mk +++ b/utils/dc-chain/scripts/patch.mk @@ -76,7 +76,7 @@ uname_s := $(shell uname -s) # This is a common 'patch_apply' function used in all the cases define patch_apply - @stamp_file=patch-$(stamp_radical_name).stamp; \ + @stamp_file=$(src_dir)/$(patch_target_name)_patch.stamp; \ patches=$$(echo "$(diff_patches)" | xargs); \ if ! test -f "$${stamp_file}"; then \ if ! test -z "$${patches}"; then \ hooks/post-receive -- A pseudo Operating System for the Dreamcast. |
From: ljsebald <ljs...@us...> - 2023-06-24 03:15:07
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "A pseudo Operating System for the Dreamcast.". The branch, master has been updated via fa92fd20540f5560a976633bc394a286f272d9fd (commit) via f138513d61d7d4631ec8b2f456b8406d4d9231e4 (commit) via 3fc8c74a998438b514fad2a5afed9084f20ae04f (commit) via 4fbc6040cca45dbd395cfe6a1486b6e20facbe98 (commit) from a1458e8916dcdeebd61462004a744dc0cb11832c (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit fa92fd20540f5560a976633bc394a286f272d9fd Merge: f138513 4fbc604 Author: Lawrence Sebald <ljs...@us...> Date: Fri Jun 23 23:13:45 2023 -0400 Merge pull request #250 from KallistiOS/maxfnlen Define MAX_FN_LEN to NAME_MAX for legacy code compatibility commit f138513d61d7d4631ec8b2f456b8406d4d9231e4 Merge: a1458e8 3fc8c74 Author: Lawrence Sebald <ljs...@us...> Date: Fri Jun 23 23:10:56 2023 -0400 Merge pull request #251 from KallistiOS/arpfix Only send ARP reply packets if we are intended receiver commit 3fc8c74a998438b514fad2a5afed9084f20ae04f Author: darc <da...@pr...> Date: Fri Jun 23 21:44:45 2023 -0500 Only send ARP reply packets if we are intended receiver commit 4fbc6040cca45dbd395cfe6a1486b6e20facbe98 Author: darc <da...@pr...> Date: Fri Jun 23 00:03:10 2023 -0500 Define MAX_FN_LEN to NAME_MAX for legacy code compatibility ----------------------------------------------------------------------- Summary of changes: include/kos/limits.h | 5 +++++ kernel/net/net_arp.c | 4 +++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/include/kos/limits.h b/include/kos/limits.h index b8466ed..212a647 100644 --- a/include/kos/limits.h +++ b/include/kos/limits.h @@ -20,6 +20,11 @@ #define NAME_MAX 256 /**< \brief Max filename length */ #endif +/* MAX_FN_LEN defined for legacy code compatibility */ +#ifndef MAX_FN_LEN +#define MAX_FN_LEN NAME_MAX +#endif + #ifndef PATH_MAX #define PATH_MAX 4096 /**< \brief Max path length */ #endif diff --git a/kernel/net/net_arp.c b/kernel/net/net_arp.c index 8926a89..0ae78ff 100644 --- a/kernel/net/net_arp.c +++ b/kernel/net/net_arp.c @@ -295,7 +295,9 @@ int net_arp_input(netif_t *nif, const uint8 *pkt_in, int len) { switch(pkt->opcode[1]) { case 1: /* ARP Request */ - net_arp_send(nif, pkt); + /* Send reply if we are the intended recipient */ + if(!memcmp(nif->ip_addr, pkt->pr_recv, 4)) + net_arp_send(nif, pkt); __fallthrough; /* Yes, this really should fall through here. */ case 2: /* ARP Reply */ hooks/post-receive -- A pseudo Operating System for the Dreamcast. |
From: ljsebald <ljs...@us...> - 2023-06-19 12:18:18
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "A pseudo Operating System for the Dreamcast.". The branch, master has been updated via a1458e8916dcdeebd61462004a744dc0cb11832c (commit) via 47205bb792de7755c0191fc3b179cfdcdbbf0d39 (commit) via 2e97bb2b4d076f88eaf5ba32a13d1732c781128e (commit) via fcd7bcd8d4aa8312a0a7b2b352a7ec16bb157b5c (commit) via 58865a149084f5db8133d5cb6c8a5f4ab9ab0db5 (commit) via 26d900d41f041cae7f51ddbc784faa2eafa203dc (commit) via dacd3aaa8a98746bc0c77b38bdacd1d0e4a5db29 (commit) via 093aae1b6fef5d8e839a929e86e04bb7e6e68057 (commit) from 1c3282cc89b5ca2be893a8aca08d070212aa87a2 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit a1458e8916dcdeebd61462004a744dc0cb11832c Merge: 47205bb 093aae1 Author: Lawrence Sebald <ljs...@us...> Date: Mon Jun 19 08:16:03 2023 -0400 Merge pull request #245 from KallistiOS/missed_the_void Remaining instances of empty arguments() replaced with (void) commit 47205bb792de7755c0191fc3b179cfdcdbbf0d39 Merge: 2e97bb2 26d900d Author: Lawrence Sebald <ljs...@us...> Date: Mon Jun 19 08:14:20 2023 -0400 Merge pull request #248 from jpeach/bfont-str-const Make the bfont string argument const. commit 2e97bb2b4d076f88eaf5ba32a13d1732c781128e Merge: fcd7bcd 58865a1 Author: Lawrence Sebald <ljs...@us...> Date: Mon Jun 19 08:13:40 2023 -0400 Merge pull request #249 from jpeach/doc-cont_btn_callback doc: improve the doc comment for cont_btn_callback commit fcd7bcd8d4aa8312a0a7b2b352a7ec16bb157b5c Merge: 1c3282c dacd3aa Author: Lawrence Sebald <ljs...@us...> Date: Mon Jun 19 08:12:59 2023 -0400 Merge pull request #247 from KallistiOS/cpp17_attributes_in_decl_specifiers Moved Noreturn_ attribute to front of thrd_exit(). commit 58865a149084f5db8133d5cb6c8a5f4ab9ab0db5 Author: James Peach <jp...@ap...> Date: Mon Jun 19 11:46:00 2023 +1000 doc: improve the doc comment for cont_btn_callback Improve the documentation for cont_btn_callback. It's helpful to know that only one global callback can be registered, and that the zero address is special. Signed-off-by: James Peach <jp...@ap...> commit 26d900d41f041cae7f51ddbc784faa2eafa203dc Author: James Peach <jp...@ap...> Date: Mon Jun 19 11:18:41 2023 +1000 Make the bfont string argument const. The str argument to bfont_draw_str can tbe const because it is never modified by the drawing routines. This remove the need to cast when passing string literals. Signed-off-by: James Peach <jp...@ap...> commit dacd3aaa8a98746bc0c77b38bdacd1d0e4a5db29 Author: Falco Girgis <gyr...@gm...> Date: Tue Jun 13 23:35:53 2023 -0500 Moved Noreturn_ attribute to front of thrd_exit(). - Apparently C++17 and onwards require standard attributes to be at the beginning of function declarations. This was in the middle, so it wasn't building with newer C++ standards. - Curiously enough the source file was already correct, so now we're consistent (not that it matters, though, source was C, not C++). commit 093aae1b6fef5d8e839a929e86e04bb7e6e68057 Author: Quzar <qu...@co...> Date: Wed Jun 7 15:44:16 2023 -0400 Various instances of empty arguments replaced with void ----------------------------------------------------------------------- Summary of changes: addons/include/navi/flash.h | 4 ++-- addons/include/navi/ide.h | 6 +++--- addons/libnavi/navi_flash.c | 6 +++--- addons/libnavi/navi_ide.c | 10 ++++----- examples/dreamcast/2ndmix/2ndmix.c | 18 ++++++++-------- examples/dreamcast/basic/asserthnd/asserthnd.c | 4 ++-- examples/dreamcast/basic/stacktrace/stacktrace.c | 2 +- examples/dreamcast/conio/adventure/porthelper.h | 2 +- examples/dreamcast/kgl/basic/scissor/scissor.c | 4 ++-- examples/dreamcast/kgl/basic/txrenv/gltest.c | 4 ++-- examples/dreamcast/kgl/basic/vq/vq-example.c | 2 +- .../dreamcast/kgl/benchmarks/quadmark/quadmark.c | 12 +++++------ .../dreamcast/kgl/benchmarks/trimark/trimark.c | 12 +++++------ .../kgl/benchmarks/tristripmark/tristripmark.c | 12 +++++------ examples/dreamcast/kgl/demos/blur/radial_blur.c | 2 +- examples/dreamcast/kgl/demos/mipmap/gl-mipmap.c | 4 ++-- examples/dreamcast/kgl/demos/specular/specular.c | 24 +++++++++++----------- examples/dreamcast/kgl/demos/specular/timer.c | 2 +- examples/dreamcast/kgl/demos/specular/timer.h | 2 +- examples/dreamcast/libdream/cdfs/cdfs.c | 2 +- examples/dreamcast/libdream/keyboard/keyboard.c | 2 +- examples/dreamcast/libdream/lcd/lcd.c | 6 +++--- examples/dreamcast/libdream/mouse/mouse.c | 2 +- examples/dreamcast/libdream/spu/spu.c | 2 +- examples/dreamcast/libdream/ta/ta.c | 6 +++--- examples/dreamcast/libdream/vmu/vmu.c | 2 +- examples/dreamcast/network/httpd/httpd.c | 4 ++-- examples/dreamcast/parallax/bubbles/bubbles.c | 6 +++--- .../dreamcast/parallax/delay_cube/delay_cube.c | 2 +- examples/dreamcast/parallax/rotocube/rotocube.c | 2 +- .../dreamcast/parallax/serpent_dma/perfmeter.c | 4 ++-- examples/dreamcast/parallax/serpent_dma/serpent.c | 4 ++-- examples/dreamcast/png/example.c | 6 +++--- examples/dreamcast/pvr/bumpmap/bump.c | 8 ++++---- examples/dreamcast/pvr/cheap_shadow/shadow.c | 6 +++--- examples/dreamcast/pvr/modifier_volume/modifier.c | 6 +++--- .../dreamcast/pvr/modifier_volume_tex/modifier.c | 6 +++--- examples/dreamcast/pvr/plasma/plasma.c | 10 ++++----- examples/dreamcast/pvr/pvrmark/pvrmark.c | 12 +++++------ .../dreamcast/pvr/pvrmark_strips/pvrmark_strips.c | 12 +++++------ .../pvrmark_strips_direct/pvrmark_strips_direct.c | 12 +++++------ .../dreamcast/pvr/texture_render/texture_render.c | 6 +++--- examples/dreamcast/sd/speedtest/sd-speedtest.c | 2 +- examples/dreamcast/sound/ghettoplay-vorbis/bkg.c | 8 ++++---- .../dreamcast/sound/ghettoplay-vorbis/ghettoplay.c | 6 +++--- examples/dreamcast/sound/ghettoplay-vorbis/gp.h | 8 ++++---- .../dreamcast/sound/ghettoplay-vorbis/songmenu.c | 12 +++++------ .../dreamcast/sound/ghettoplay-vorbis/texture.c | 2 +- examples/dreamcast/vmu/vmu_game/vmu_game.c | 8 ++++---- examples/dreamcast/vmu/vmu_pkg/vmu.c | 8 ++++---- include/kos/fs_pty.h | 4 ++-- include/threads.h | 2 +- kernel/arch/dreamcast/hardware/biosfont.c | 4 ++-- kernel/arch/dreamcast/include/dc/biosfont.h | 4 ++-- .../arch/dreamcast/include/dc/maple/controller.h | 7 +++++-- kernel/arch/dreamcast/include/dc/maple/keyboard.h | 2 +- kernel/arch/dreamcast/include/dc/pvr.h | 6 +++--- kernel/libc/newlib/verify_newlib.c | 2 +- 58 files changed, 174 insertions(+), 171 deletions(-) diff --git a/addons/include/navi/flash.h b/addons/include/navi/flash.h index bea7b2d..887ef3b 100644 --- a/addons/include/navi/flash.h +++ b/addons/include/navi/flash.h @@ -25,7 +25,7 @@ \return 0 if a compatible flashrom is detected, <0 if the normal Dreamcast BIOS is detected. */ -int nvflash_detect(); +int nvflash_detect(void); /** \brief Erase a single block of flashrom. \param addr The block of the flashrom to erase. @@ -45,6 +45,6 @@ int nvflash_write_block(uint32 addr, void * data, uint32 len); /** \brief Erase the whole flashrom. \return 0 on success, <0 on error. */ -int nvflash_erase_all(); +int nvflash_erase_all(void); #endif /* __NAVI_FLASH_H */ diff --git a/addons/include/navi/ide.h b/addons/include/navi/ide.h index 7ccdf40..346305c 100644 --- a/addons/include/navi/ide.h +++ b/addons/include/navi/ide.h @@ -40,14 +40,14 @@ int ide_write(uint32 linear, uint32 numsects, void *bufptr); /** \brief Retrieve the number of sectors from the hard disk. \returns The total number of linear sectors. */ -uint32 ide_num_sectors(); +uint32 ide_num_sectors(void); /** \brief Initialize Navi IDE. \return 0 on success (no error conditions defined). */ -int ide_init(); +int ide_init(void); /** \brief Shutdown Navi IDE. */ -void ide_shutdown(); +void ide_shutdown(void); #endif /* __NAVI_IDE_H */ diff --git a/addons/libnavi/navi_flash.c b/addons/libnavi/navi_flash.c index 9f10d19..16854ea 100644 --- a/addons/libnavi/navi_flash.c +++ b/addons/libnavi/navi_flash.c @@ -73,7 +73,7 @@ static vuint8 * const flashport = (vuint8 *)0xa0000000; /* We'll do this before sending a command */ -static void send_unlock() { +static void send_unlock(void) { flashport[ADDR_UNLOCK_1] = CMD_UNLOCK_DATA_1; flashport[ADDR_UNLOCK_2] = CMD_UNLOCK_DATA_2; } @@ -175,7 +175,7 @@ int nvflash_erase_block(uint32 addr) { } /* Erase the whole flash chip */ -int nvflash_erase_all() { +int nvflash_erase_all(void) { send_cmd(CMD_SECTOR_ERASE_UNLOCK_DATA); send_cmd(CMD_ERASE_ALL); @@ -193,7 +193,7 @@ int nvflash_erase_all() { } /* Return 0 if we successfully detect a compatible device */ -int nvflash_detect() { +int nvflash_detect(void) { uint16 mfr_id, dev_id; if(nvflash_read(0) == 0xff && nvflash_read(2) == 0x28) { diff --git a/addons/libnavi/navi_ide.c b/addons/libnavi/navi_ide.c index b179413..cd09fbb 100644 --- a/addons/libnavi/navi_ide.c +++ b/addons/libnavi/navi_ide.c @@ -72,7 +72,7 @@ uint16 ide_inp(int port, int size) { /* These are to synchronize us with the controller so we don't do something it's not ready for */ -static void wait_controller() { +static void wait_controller(void) { int timeout = 1000; while((inp(0x1f7) & 0x80) && timeout) { @@ -86,7 +86,7 @@ static void wait_controller() { } } -static void wait_data() { +static void wait_data(void) { int timeout = 1000; while(!(inp(0x1f7) & 0x08) && timeout) { @@ -236,12 +236,12 @@ int ide_write(uint32 linear, uint32 numsects, void *bufptr) { } /* Get the available space */ -uint32 ide_num_sectors() { +uint32 ide_num_sectors(void) { return hd_cyls * hd_heads * hd_sects; } /* Initialize the device */ -int ide_init() { +int ide_init(void) { int dd_off; dbglog(DBG_INFO, "ide_init: initializing\n"); @@ -273,7 +273,7 @@ int ide_init() { return 0; } -void ide_shutdown() { +void ide_shutdown(void) { } diff --git a/examples/dreamcast/2ndmix/2ndmix.c b/examples/dreamcast/2ndmix/2ndmix.c index c5ee77b..91b422b 100644 --- a/examples/dreamcast/2ndmix/2ndmix.c +++ b/examples/dreamcast/2ndmix/2ndmix.c @@ -103,7 +103,7 @@ int *star_x = NULL, *star_y, *star_z; pvr_poly_hdr_t stars_header; -void stars_init() { +void stars_init(void) { int i; pvr_poly_cxt_t tmp; @@ -145,7 +145,7 @@ void poly_pnt(int x, int y, float z, float size, int color) { pvr_prim(&vert, sizeof(vert)); } -void stars_one_frame() { +void stars_one_frame(void) { int i, x1, y1, xn, yn, zn, c; /* Send polygon header to the TA using store queues */ @@ -320,7 +320,7 @@ void draw_cube(int which) { /* Draw six cubes arranged in a circle */ int zooming = 1; -void cube_one_frame() { +void cube_one_frame(void) { int i, j; rotang = (rotang + 1) % 512; @@ -348,7 +348,7 @@ void cube_one_frame() { int cubes_have_header = 0; pvr_poly_hdr_t cubes_header; -void cubes_one_frame() { +void cubes_one_frame(void) { pvr_poly_cxt_t tmp; if(!cubes_have_header) { @@ -589,7 +589,7 @@ void font_draw_string(int x1, int y1, float color, char *str) { } } -void font_next_screen() { +void font_next_screen(void) { int width; int y, y1, x; @@ -625,7 +625,7 @@ void font_next_screen() { #if 0 /* Debug code to draw the font texture */ -void blit_font_texture() { +void blit_font_texture(void) { vertex_ot_t vert; vert.flags = TA_VERTEX_NORMAL; @@ -666,7 +666,7 @@ void blit_font_texture() { pvr_poly_hdr_t font_header; -void font_one_frame() { +void font_one_frame(void) { int done, y, actrows; actrows = 0; @@ -725,7 +725,7 @@ void font_one_frame() { } } -void font_init() { +void font_init(void) { int x, y, c; uint8 pcxpall[768]; volatile uint16 *vtex; @@ -787,7 +787,7 @@ void font_init() { /********************************************************************/ int framecnt = 0; -void draw_one_frame() { +void draw_one_frame(void) { /* Begin opaque polygons */ pvr_wait_ready(); pvr_scene_begin(); diff --git a/examples/dreamcast/basic/asserthnd/asserthnd.c b/examples/dreamcast/basic/asserthnd/asserthnd.c index c92bcf8..a0a06a6 100644 --- a/examples/dreamcast/basic/asserthnd/asserthnd.c +++ b/examples/dreamcast/basic/asserthnd/asserthnd.c @@ -35,14 +35,14 @@ assuming you compiled your program with -g: */ -void func2() { +void func2(void) { int a = 5; assert_msg(a != 5, "This is a test message!"); assert(a != 5); } -void func1() { +void func1(void) { func2(); } diff --git a/examples/dreamcast/basic/stacktrace/stacktrace.c b/examples/dreamcast/basic/stacktrace/stacktrace.c index bff234c..74eaa1f 100644 --- a/examples/dreamcast/basic/stacktrace/stacktrace.c +++ b/examples/dreamcast/basic/stacktrace/stacktrace.c @@ -6,7 +6,7 @@ #include <kos.h> -void func() { +void func(void) { arch_stk_trace(0); } diff --git a/examples/dreamcast/conio/adventure/porthelper.h b/examples/dreamcast/conio/adventure/porthelper.h index 84c85fd..f06e10b 100644 --- a/examples/dreamcast/conio/adventure/porthelper.h +++ b/examples/dreamcast/conio/adventure/porthelper.h @@ -25,6 +25,6 @@ #undef getchar #undef putchar -int getchar(); +int getchar(void); #endif /* __PORTHELPER_H */ diff --git a/examples/dreamcast/kgl/basic/scissor/scissor.c b/examples/dreamcast/kgl/basic/scissor/scissor.c index 479b74d..7cda5af 100644 --- a/examples/dreamcast/kgl/basic/scissor/scissor.c +++ b/examples/dreamcast/kgl/basic/scissor/scissor.c @@ -149,7 +149,7 @@ static void draw_gl(float rot, float x, float y) { glPopMatrix(); } -static void draw_ortho_scene() { +static void draw_ortho_scene(void) { glMatrixMode(GL_MODELVIEW); glLoadIdentity(); glOrtho(0, 640, 0, 480, -1, 1); @@ -169,7 +169,7 @@ static void draw_ortho_scene() { rect(512, 0, 512, 512); } -static void draw_perspective_scene() { +static void draw_perspective_scene(void) { glMatrixMode(GL_PROJECTION); glLoadIdentity(); gluPerspective(45.0f, 320.0f / 240.0f, 0.1f, 100.0f); diff --git a/examples/dreamcast/kgl/basic/txrenv/gltest.c b/examples/dreamcast/kgl/basic/txrenv/gltest.c index f83da35..cc89c56 100644 --- a/examples/dreamcast/kgl/basic/txrenv/gltest.c +++ b/examples/dreamcast/kgl/basic/txrenv/gltest.c @@ -55,7 +55,7 @@ void glDrawQuads(float x, float y, float w, float h, int count, glEnd(); } -void RenderCallback() { +void RenderCallback(void) { if(BLEND) glEnable(GL_BLEND); @@ -72,7 +72,7 @@ void RenderCallback() { glutSwapBuffers(); } -int InputCallback() { +int InputCallback(void) { maple_device_t *cont = maple_enum_type(0, MAPLE_FUNC_CONTROLLER); if(cont) { diff --git a/examples/dreamcast/kgl/basic/vq/vq-example.c b/examples/dreamcast/kgl/basic/vq/vq-example.c index 68b323c..238613a 100644 --- a/examples/dreamcast/kgl/basic/vq/vq-example.c +++ b/examples/dreamcast/kgl/basic/vq/vq-example.c @@ -30,7 +30,7 @@ extern unsigned char fruit[]; extern unsigned char fruit_end[]; /* Load a texture with glCompressedTexImage2D */ -static int loadtxr() { +static int loadtxr(void) { glGenTextures(1, texture); glBindTexture(GL_TEXTURE_2D, texture[0]); diff --git a/examples/dreamcast/kgl/benchmarks/quadmark/quadmark.c b/examples/dreamcast/kgl/benchmarks/quadmark/quadmark.c index 5a387b8..ea0a240 100644 --- a/examples/dreamcast/kgl/benchmarks/quadmark/quadmark.c +++ b/examples/dreamcast/kgl/benchmarks/quadmark/quadmark.c @@ -25,7 +25,7 @@ int polycnt; int phase = PHASE_HALVE; float avgfps = -1; -void running_stats() { +void running_stats(void) { pvr_stats_t stats; pvr_get_stats(&stats); @@ -35,7 +35,7 @@ void running_stats() { avgfps = (avgfps + stats.frame_rate) / 2.0f; } -void stats() { +void stats(void) { pvr_stats_t stats; pvr_get_stats(&stats); @@ -44,7 +44,7 @@ void stats() { } -int check_start() { +int check_start(void) { maple_device_t *cont; cont_state_t *state; @@ -62,7 +62,7 @@ int check_start() { pvr_poly_hdr_t hdr; -void setup() { +void setup(void) { glKosInit(); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); @@ -71,7 +71,7 @@ void setup() { glLoadIdentity(); } -void do_frame() { +void do_frame(void) { int x, y, z; int size; int i; @@ -106,7 +106,7 @@ void switch_tests(int ppf) { polycnt = ppf; } -void check_switch() { +void check_switch(void) { time_t now; now = time(NULL); diff --git a/examples/dreamcast/kgl/benchmarks/trimark/trimark.c b/examples/dreamcast/kgl/benchmarks/trimark/trimark.c index 953e2af..1973bd2 100644 --- a/examples/dreamcast/kgl/benchmarks/trimark/trimark.c +++ b/examples/dreamcast/kgl/benchmarks/trimark/trimark.c @@ -25,7 +25,7 @@ int polycnt; int phase = PHASE_HALVE; float avgfps = -1; -void running_stats() { +void running_stats(void) { pvr_stats_t stats; pvr_get_stats(&stats); @@ -35,7 +35,7 @@ void running_stats() { avgfps = (avgfps + stats.frame_rate) / 2.0f; } -void stats() { +void stats(void) { pvr_stats_t stats; pvr_get_stats(&stats); @@ -44,7 +44,7 @@ void stats() { } -int check_start() { +int check_start(void) { maple_device_t *cont; cont_state_t *state; @@ -62,7 +62,7 @@ int check_start() { pvr_poly_hdr_t hdr; -void setup() { +void setup(void) { glKosInit(); glMatrixMode(GL_MODELVIEW); glLoadIdentity(); @@ -71,7 +71,7 @@ void setup() { glLoadIdentity(); } -void do_frame() { +void do_frame(void) { int x, y, z; int size; int i; @@ -105,7 +105,7 @@ void switch_tests(int ppf) { polycnt = ppf; } -void check_switch() { +void check_switch(void) { time_t now; now = time(NULL); diff --git a/examples/dreamcast/kgl/benchmarks/tristripmark/tristripmark.c b/examples/dreamcast/kgl/benchmarks/tristripmark/tristripmark.c index d86b79e..9ee44da 100644 --- a/examples/dreamcast/kgl/benchmarks/tristripmark/tristripmark.c +++ b/examples/dreamcast/kgl/benchmarks/tristripmark/tristripmark.c @@ -25,7 +25,7 @@ int polycnt; int phase = PHASE_HALVE; float avgfps = -1; -void running_stats() { +void running_stats(void) { pvr_stats_t stats; pvr_get_stats(&stats); @@ -35,7 +35,7 @@ void running_stats() { avgfps = (avgfps + stats.frame_rate) / 2.0f; } -void stats() { +void stats(void) { pvr_stats_t stats; pvr_get_stats(&stats); @@ -44,7 +44,7 @@ void stats() { } -int check_start() { +int check_start(void) { ...<truncated>... hooks/post-receive -- A pseudo Operating System for the Dreamcast. |
From: darcagn <da...@us...> - 2023-06-18 17:23:55
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "A serial program loader for the Dreamcast.". The branch, master has been updated via 4d28558a2c09c7abb2678c12e9957aa4dad53ca3 (commit) from 91830faef38d8f3f52bfbbd23f867e446763f6b3 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 4d28558a2c09c7abb2678c12e9957aa4dad53ca3 Author: Tim Riemann <tri...@oc...> Date: Sun Jun 18 16:02:58 2023 +0200 Use MiniLZO v2.10 (#12) * add minilzo v2.10 * remove old minilzo version * use minilzo v2.10 ----------------------------------------------------------------------- Summary of changes: host-src/misc/Makefile | 2 +- host-src/misc/lzo.c | 119 +- host-src/tool/Makefile | 2 +- host-src/tool/dc-tool.c | 4 +- {minilzo.106 => minilzo-2.10}/COPYING | 29 +- minilzo-2.10/Makefile | 100 + minilzo-2.10/lzoconf.h | 453 +++ minilzo-2.10/lzodefs.h | 3268 ++++++++++++++++ minilzo-2.10/minilzo.c | 6365 +++++++++++++++++++++++++++++++ {minilzo.106 => minilzo-2.10}/minilzo.h | 48 +- minilzo-2.10/testmini.c | 148 + minilzo.106/Makefile | 58 - minilzo.106/README.LZO | 136 - minilzo.106/lzoconf.h | 369 -- minilzo.106/minilzo.c | 2846 -------------- minilzo.106/testmini.c | 154 - target-src/dcload/Makefile | 2 +- target-src/dcload/dcload.c | 4 +- 18 files changed, 10445 insertions(+), 3662 deletions(-) rename {minilzo.106 => minilzo-2.10}/COPYING (97%) create mode 100644 minilzo-2.10/Makefile create mode 100644 minilzo-2.10/lzoconf.h create mode 100644 minilzo-2.10/lzodefs.h create mode 100644 minilzo-2.10/minilzo.c rename {minilzo.106 => minilzo-2.10}/minilzo.h (63%) create mode 100644 minilzo-2.10/testmini.c delete mode 100644 minilzo.106/Makefile delete mode 100644 minilzo.106/README.LZO delete mode 100644 minilzo.106/lzoconf.h delete mode 100644 minilzo.106/minilzo.c delete mode 100644 minilzo.106/testmini.c diff --git a/host-src/misc/Makefile b/host-src/misc/Makefile index a0e34a3..4f33df5 100644 --- a/host-src/misc/Makefile +++ b/host-src/misc/Makefile @@ -1,6 +1,6 @@ include ../../Makefile.cfg -LZOPATH = ../../minilzo.106 +LZOPATH = ../../minilzo-2.10 CC = $(HOSTCC) CFLAGS = $(HOSTCFLAGS) diff --git a/host-src/misc/lzo.c b/host-src/misc/lzo.c index 5a61ae4..db4b041 100644 --- a/host-src/misc/lzo.c +++ b/host-src/misc/lzo.c @@ -37,63 +37,66 @@ void usage(void) { exit(1); } -int main(int argc, char *argv[]) { - int in, out; - unsigned char *data; - unsigned char *cdata; - int r; - unsigned int length, clength; - - if(argc != 3) - usage(); - - in = open(argv[1], O_RDONLY); - - if(in < 0) { - perror(argv[1]); - exit(1); - } - - out = open(argv[2], O_WRONLY | O_CREAT | O_TRUNC, 0644); - - if(out < 0) { - perror(argv[2]); - exit(1); - } - - length = lseek(in, 0, SEEK_END); - lseek(in, 0, SEEK_SET); - - data = malloc(length); - cdata = malloc(length+length/64 + 16 + 3); - - read(in, data, length); - - if(lzo_init() != LZO_E_OK) { - printf("lzo_init() failed !!!\n"); - exit(1); - } - - r = lzo1x_1_compress(data,length,cdata,&clength,wrkmem); - if(r == LZO_E_OK) - printf("compressed %lu bytes into %lu bytes\n", - (long) length, (long) clength); - else { - /* this should NEVER happen */ - printf("internal error - compression failed: %d\n", r); - return 2; - } - - /* check for an incompressible block */ - if(clength >= length) { - printf("This block contains incompressible data.\n"); - return 0; - } - - write(out, cdata, clength); - - close(in); - close(out); - exit(0); +int main(int argc, char *argv[]) +{ + int in, out; + unsigned char * data; + unsigned char * cdata; + int r; + lzo_uint length,clength; + + if (argc != 3) + usage(); + + in = open(argv[1], O_RDONLY); + + if (in < 0) { + perror(argv[1]); + exit(1); + } + + out = open(argv[2], O_WRONLY | O_CREAT | O_TRUNC, 0644); + + if (out < 0) { + perror(argv[2]); + exit(1); + } + + length = lseek(in, 0, SEEK_END); + lseek(in, 0, SEEK_SET); + + data = malloc(length); + cdata = malloc(length+length/64 + 16 + 3); + + read(in, data, length); + + if (lzo_init() != LZO_E_OK) + { + printf("lzo_init() failed !!!\n"); + exit(1); + } + + r = lzo1x_1_compress(data,length,cdata,&clength,wrkmem); + if (r == LZO_E_OK) + printf("compressed %lu bytes into %lu bytes\n", + (long) length, (long) clength); + else + { + /* this should NEVER happen */ + printf("internal error - compression failed: %d\n", r); + return 2; + } + /* check for an incompressible block */ + if (clength >= length) + { + printf("This block contains incompressible data.\n"); + return 0; + } + + write(out, cdata, clength); + + close(in); + close(out); + exit(0); } diff --git a/host-src/tool/Makefile b/host-src/tool/Makefile index d7b35fe..75eb877 100644 --- a/host-src/tool/Makefile +++ b/host-src/tool/Makefile @@ -1,6 +1,6 @@ include ../../Makefile.cfg -LZOPATH = ../../minilzo.106 +LZOPATH = ../../minilzo-2.10 CC = $(HOSTCC) CFLAGS = $(HOSTCFLAGS) -DDCLOAD_VERSION=\"$(VERSION)\" -DDEFAULT_SPEED=$(TOOL_DEFAULT_SPEED) -DSERIALDEVICE="\"$(SERIALDEVICE)\"" -DHAVE_GETOPT -DB1500000 -DB500000 diff --git a/host-src/tool/dc-tool.c b/host-src/tool/dc-tool.c index 04ec33e..ff3e047 100644 --- a/host-src/tool/dc-tool.c +++ b/host-src/tool/dc-tool.c @@ -362,7 +362,7 @@ unsigned int recv_uint(void) { /* receive total bytes from dc and store in data */ void recv_data(void *data, unsigned int total, unsigned int verbose) { unsigned char type, sum, ok; - unsigned int size, newsize; + lzo_uint size, newsize; unsigned char *tmp; if(verbose) { @@ -425,7 +425,7 @@ void send_data(unsigned char * addr, unsigned int size, unsigned int verbose) { unsigned char *location = (unsigned char *) addr; unsigned char sum = 0; unsigned char data; - unsigned int csize; + lzo_uint csize; unsigned int sendsize; unsigned char c; unsigned char * buffer; diff --git a/minilzo.106/COPYING b/minilzo-2.10/COPYING similarity index 97% rename from minilzo.106/COPYING rename to minilzo-2.10/COPYING index b4951ab..d159169 100644 --- a/minilzo.106/COPYING +++ b/minilzo-2.10/COPYING @@ -1,8 +1,8 @@ GNU GENERAL PUBLIC LICENSE Version 2, June 1991 - Copyright (C) 1989, 1991 Free Software Foundation, Inc. - 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA + Copyright (C) 1989, 1991 Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. @@ -15,7 +15,7 @@ software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by -the GNU Library General Public License instead.) You can apply it to +the GNU Lesser General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not @@ -55,7 +55,7 @@ patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. - + GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION @@ -110,7 +110,7 @@ above, provided that you also meet all of these conditions: License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) - + These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in @@ -168,7 +168,7 @@ access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. - + 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is @@ -225,7 +225,7 @@ impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. - + 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License @@ -278,7 +278,7 @@ PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS - + How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest @@ -291,7 +291,7 @@ convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. <one line to give the program's name and a brief idea of what it does.> - Copyright (C) 19yy <name of author> + Copyright (C) <year> <name of author> This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -303,17 +303,16 @@ the "copyright" line and a pointer to where the full notice is found. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. - You should have received a copy of the GNU General Public License - along with this program; if not, write to the Free Software - Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA - + You should have received a copy of the GNU General Public License along + with this program; if not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: - Gnomovision version 69, Copyright (C) 19yy name of author + Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. @@ -336,5 +335,5 @@ necessary. Here is a sample; alter the names: This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the -library. If this is what you want to do, use the GNU Library General +library. If this is what you want to do, use the GNU Lesser General Public License instead of this License. diff --git a/minilzo-2.10/Makefile b/minilzo-2.10/Makefile new file mode 100644 index 0000000..ae4d6d4 --- /dev/null +++ b/minilzo-2.10/Makefile @@ -0,0 +1,100 @@ +# +# a very simple Makefile for miniLZO +# +# Copyright (C) 1996-2017 Markus F.X.J. Oberhumer +# + +PROGRAM = testmini +SOURCES = testmini.c minilzo.c + +default: + @echo "" + @echo "Welcome to miniLZO. Please choose one of the following 'make' targets:" + @echo "" + @echo " gcc: gcc" + @echo " unix: hpux hpux9" + @echo " win32: win32-bc win32-cygwin win32-dm win32-lccwin32" + @echo " win32-intelc win32-mingw win32-vc win32-watcomc" + @echo " dos32: dos32-djgpp2 dos32-wc" + @echo "" + + +# Make sure that minilzo.h, lzoconf.h and lzodefs.h are in the +# current dircectory. Otherwise you may want to adjust CPPFLAGS. +CPPFLAGS = -I. -I../include/lzo + +GCC_CFLAGS = -s -Wall -O2 -fomit-frame-pointer + + +# +# gcc (generic) +# + +gcc: + gcc $(CPPFLAGS) $(GCC_CFLAGS) -o $(PROGRAM) $(SOURCES) + +cc: + cc $(CPPFLAGS) -o $(PROGRAM) $(SOURCES) + + +# +# UNIX +# + +hpux: + cc -Ae $(CPPFLAGS) -o $(PROGRAM) $(SOURCES) + +hpux9: + cc -Aa -D_HPUX_SOURCE $(CPPFLAGS) -o $(PROGRAM) $(SOURCES) + + +# +# Windows (32-bit) +# + +win32-borlandc win32-bc: + bcc32 -O2 -d -w -w-aus $(CPPFLAGS) $(SOURCES) + +win32-cygwin32 win32-cygwin: + gcc -mcygwin $(CPPFLAGS) $(GCC_CFLAGS) -o $(PROGRAM).exe $(SOURCES) + +win32-digitalmars win32-dm: + dmc -mn -o -w- $(CPPFLAGS) $(SOURCES) + +win32-intelc win32-ic: + icl -nologo -MT -W3 -O2 -GF $(CPPFLAGS) $(SOURCES) + +win32-lccwin32: + @echo "NOTE: need lcc 2002-07-25 or newer, older versions have bugs" + lc -A -unused -O $(CPPFLAGS) $(SOURCES) + +win32-mingw32 win32-mingw: + gcc -mno-cygwin $(CPPFLAGS) $(GCC_CFLAGS) -o $(PROGRAM).exe $(SOURCES) + +win32-visualc win32-vc: + cl -nologo -MT -W3 -O2 -GF $(CPPFLAGS) $(SOURCES) + +win32-watcomc win32-wc: + wcl386 -bt=nt -zq -mf -5r -zc -w5 -oneatx $(CPPFLAGS) $(SOURCES) + + +# +# DOS (32-bit) +# + +dos32-djgpp2 dos32-dj2: + gcc $(CPPFLAGS) $(GCC_CFLAGS) -o $(PROGRAM).exe $(SOURCES) + +dos32-watcomc dos32-wc: + wcl386 -zq -mf -bt=dos -l=dos4g -5r -ox -zc $(CPPFLAGS) $(SOURCES) + + +# +# other targets +# + +clean: + rm -f $(PROGRAM) $(PROGRAM).exe $(PROGRAM).map $(PROGRAM).tds + rm -f *.err *.o *.obj + +.PHONY: default clean diff --git a/minilzo-2.10/lzoconf.h b/minilzo-2.10/lzoconf.h new file mode 100644 index 0000000..f9a8bdb --- /dev/null +++ b/minilzo-2.10/lzoconf.h @@ -0,0 +1,453 @@ +/* lzoconf.h -- configuration of the LZO data compression library + + This file is part of the LZO real-time data compression library. + + Copyright (C) 1996-2017 Markus Franz Xaver Johannes Oberhumer + All Rights Reserved. + + The LZO library is free software; you can redistribute it and/or + modify it under the terms of the GNU General Public License as + published by the Free Software Foundation; either version 2 of + the License, or (at your option) any later version. + + The LZO library is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with the LZO library; see the file COPYING. + If not, write to the Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. + + Markus F.X.J. Oberhumer + <ma...@ob...> + http://www.oberhumer.com/opensource/lzo/ + */ + + +#ifndef __LZOCONF_H_INCLUDED +#define __LZOCONF_H_INCLUDED 1 + +#define LZO_VERSION 0x20a0 /* 2.10 */ +#define LZO_VERSION_STRING "2.10" +#define LZO_VERSION_DATE "Mar 01 2017" + +/* internal Autoconf configuration file - only used when building LZO */ +#if defined(LZO_HAVE_CONFIG_H) +# include <config.h> +#endif +#include <limits.h> +#include <stddef.h> + + +/*********************************************************************** +// LZO requires a conforming <limits.h> +************************************************************************/ + +#if !defined(CHAR_BIT) || (CHAR_BIT != 8) +# error "invalid CHAR_BIT" +#endif +#if !defined(UCHAR_MAX) || !defined(USHRT_MAX) || !defined(UINT_MAX) || !defined(ULONG_MAX) +# error "check your compiler installation" +#endif +#if (USHRT_MAX < 1) || (UINT_MAX < 1) || (ULONG_MAX < 1) +# error "your limits.h macros are broken" +#endif + +/* get OS and architecture defines */ +#ifndef __LZODEFS_H_INCLUDED +#include <lzo/lzodefs.h> +#endif + + +#ifdef __cplusplus +extern "C" { +#endif + + +/*********************************************************************** +// some core defines +************************************************************************/ + +/* memory checkers */ +#if !defined(__LZO_CHECKER) +# if defined(__BOUNDS_CHECKING_ON) +# define __LZO_CHECKER 1 +# elif defined(__CHECKER__) +# define __LZO_CHECKER 1 +# elif defined(__INSURE__) +# define __LZO_CHECKER 1 +# elif defined(__PURIFY__) +# define __LZO_CHECKER 1 +# endif ...<truncated>... hooks/post-receive -- A serial program loader for the Dreamcast. |
From: ljsebald <ljs...@us...> - 2023-06-13 20:25:55
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "A serial program loader for the Dreamcast.". The branch, master has been updated via 91830faef38d8f3f52bfbbd23f867e446763f6b3 (commit) from 62f5b4d83a1f6fede8eb59b333ed25a6299200c1 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 91830faef38d8f3f52bfbbd23f867e446763f6b3 Author: Andress Barajas <and...@gm...> Date: Tue Jun 13 13:24:52 2023 -0700 Fix style/spacing and some warnings (#15) ----------------------------------------------------------------------- Summary of changes: example-src/Makefile | 6 +- example-src/console-test.c | 17 +- example-src/dcload-syscalls.c | 139 +++++------ example-src/dcload-syscalls.h | 28 +-- example-src/exception-test.c | 3 +- host-src/misc/Makefile | 12 +- host-src/misc/lzo.c | 126 +++++----- host-src/tool/Makefile | 5 +- host-src/tool/dc-tool.c | 331 +++++++++++++-------------- host-src/tool/syscalls.c | 151 ++++++------ host-src/tool/unlink.c | 15 +- host-src/tool/utils.c | 13 +- make-cd/Makefile | 12 +- target-inc/_ansi.h | 54 ++--- target-inc/ar.h | 28 +-- target-inc/assert.h | 4 +- target-inc/ctype.h | 50 ++-- target-inc/grp.h | 36 +-- target-inc/ieeefp.h | 205 ++++++++--------- target-inc/locale.h | 47 ++-- target-inc/machine/fastmath.h | 33 ++- target-inc/machine/setjmp-dj.h | 18 +- target-inc/malloc.h | 22 +- target-inc/math.h | 89 ++++---- target-inc/paths.h | 6 +- target-inc/process.h | 10 +- target-inc/pwd.h | 40 ++-- target-inc/setjmp.h | 8 +- target-inc/signal.h | 18 +- target-inc/stdio.h | 294 ++++++++++++------------ target-inc/stdlib.h | 146 ++++++------ target-inc/string.h | 75 +++--- target-inc/sys/_types.h | 4 +- target-inc/sys/dirent.h | 10 +- target-inc/sys/errno.h | 180 +++++++-------- target-inc/sys/fcntl.h | 220 +++++++++--------- target-inc/sys/param.h | 10 +- target-inc/sys/reent.h | 210 +++++++++-------- target-inc/sys/resource.h | 8 +- target-inc/sys/signal.h | 193 ++++++++-------- target-inc/sys/stat-dj.h | 56 ++--- target-inc/sys/stat.h | 191 ++++++++-------- target-inc/sys/syscall.h | 52 ++--- target-inc/sys/time.h | 16 +- target-inc/sys/timeb.h | 11 +- target-inc/sys/times.h | 14 +- target-inc/sys/types.h | 82 ++++--- target-inc/sys/unistd.h | 210 ++++++++--------- target-inc/sys/utime.h | 7 +- target-inc/sys/wait.h | 12 +- target-inc/time.h | 43 ++-- target-inc/unctrl.h | 8 +- target-inc/unistd.h | 2 +- target-inc/utmp.h | 1 - target-src/dcload/Makefile | 4 +- target-src/dcload/asm.h | 8 +- target-src/dcload/cdfs_syscalls.c | 82 +++---- target-src/dcload/dcload.c | 468 ++++++++++++++++++-------------------- target-src/dcload/memcmp.c | 92 ++++---- target-src/dcload/memmove.c | 129 ++++++----- target-src/dcload/scif.c | 43 ++-- target-src/dcload/syscalls.c | 168 +++++++------- 62 files changed, 2206 insertions(+), 2369 deletions(-) diff --git a/example-src/Makefile b/example-src/Makefile index 6b06c0b..d82a7aa 100644 --- a/example-src/Makefile +++ b/example-src/Makefile @@ -1,6 +1,6 @@ include ../Makefile.cfg -CC = $(TARGETCC) +CC = $(TARGETCC) INCLUDE = -I../target-inc CFLAGS = $(TARGETCFLAGS) OBJCOPY = $(TARGETOBJCOPY) @@ -32,8 +32,8 @@ exception-test: $(OBJECTS) exception-test.o .PHONY : clean clean: - rm -f *.o console-test exception-test + -rm -f *.o console-test exception-test .PHONY : distclean distclean: clean - rm -f *.bin + -rm -f *.bin diff --git a/example-src/console-test.c b/example-src/console-test.c index 3a71e72..2db2b49 100644 --- a/example-src/console-test.c +++ b/example-src/console-test.c @@ -1,34 +1,31 @@ #include "dcload-syscalls.h" -int main(void) -{ +int main(void) { int fd; unsigned char buffer[2048]; int count; unsigned char wrkmem[65536]; assign_wrkmem(wrkmem); - write(1, "dcload console test program\n\n", 30); fd = open("console-test.c", O_RDONLY); - if (fd == -1) { - write(1, "open failed!\n", 14); - exit(1); + if(fd == -1) { + write(1, "open failed!\n", 14); + exit(1); } write(1, "Contents of console-test.c:\n\n", 30); count = read(fd, buffer, 2048); - if (count == -1) { - write(1, "read failed!\n", 14); - exit(1); + if(count == -1) { + write(1, "read failed!\n", 14); + exit(1); } write(1, buffer, count); - close(fd); exit(0); diff --git a/example-src/dcload-syscalls.c b/example-src/dcload-syscalls.c index c59a8bf..cb71ce0 100644 --- a/example-src/dcload-syscalls.c +++ b/example-src/dcload-syscalls.c @@ -1,126 +1,111 @@ #include "dcload-syscall.h" -int link (const char *oldpath, const char *newpath) -{ - if (*DCLOADMAGICADDR == DCLOADMAGICVALUE) - return dcloadsyscall(pclinknr, oldpath, newpath); +int link(const char *oldpath, const char *newpath) { + if(*DCLOADMAGICADDR == DCLOADMAGICVALUE) + return dcloadsyscall(pclinknr, oldpath, newpath); else - return -1; + return -1; } -int read (int file, char *ptr, int len) -{ - if (*DCLOADMAGICADDR == DCLOADMAGICVALUE) - return dcloadsyscall(pcreadnr, file, ptr, len); +int read(int file, char *ptr, int len) { + if(*DCLOADMAGICADDR == DCLOADMAGICVALUE) + return dcloadsyscall(pcreadnr, file, ptr, len); else - return -1; + return -1; } -int lseek (int file, int ptr, int dir) -{ - if (*DCLOADMAGICADDR == DCLOADMAGICVALUE) - return dcloadsyscall(pclseeknr, file, ptr, dir); +int lseek(int file, int ptr, int dir) { + if(*DCLOADMAGICADDR == DCLOADMAGICVALUE) + return dcloadsyscall(pclseeknr, file, ptr, dir); else - return -1; + return -1; } -int write ( int file, char *ptr, int len) -{ - if (*DCLOADMAGICADDR == DCLOADMAGICVALUE) - return dcloadsyscall(pcwritenr, file, ptr, len); +int write(int file, char *ptr, int len) { + if(*DCLOADMAGICADDR == DCLOADMAGICVALUE) + return dcloadsyscall(pcwritenr, file, ptr, len); else - return -1; + return -1; } -int close (int file) -{ - if (*DCLOADMAGICADDR == DCLOADMAGICVALUE) - return dcloadsyscall(pcclosenr, file); +int close(int file) { + if(*DCLOADMAGICADDR == DCLOADMAGICVALUE) + return dcloadsyscall(pcclosenr, file); else - return -1; + return -1; } -int fstat (int file, struct stat *st) -{ - if (*DCLOADMAGICADDR == DCLOADMAGICVALUE) - return dcloadsyscall(pcfstatnr, file, st); +int fstat(int file, struct stat *st) { + if(*DCLOADMAGICADDR == DCLOADMAGICVALUE) + return dcloadsyscall(pcfstatnr, file, st); else - return -1; + return -1; } -int open (const char *path, int flags) -{ - if (*DCLOADMAGICADDR == DCLOADMAGICVALUE) - return dcloadsyscall(pcopennr, path, flags); +int open(const char *path, int flags) { + if(*DCLOADMAGICADDR == DCLOADMAGICVALUE) + return dcloadsyscall(pcopennr, path, flags); else - return -1; + return -1; } -int creat (const char *path, int mode) -{ +int creat(const char *path, int mode) { if (*DCLOADMAGICADDR == DCLOADMAGICVALUE) - return dcloadsyscall(pccreatnr, path, mode); + return dcloadsyscall(pccreatnr, path, mode); else - return -1; + return -1; } -int unlink (const char *path) -{ - if (*DCLOADMAGICADDR == DCLOADMAGICVALUE) - return dcloadsyscall(pcunlinknr, path); +int unlink(const char *path) { + if(*DCLOADMAGICADDR == DCLOADMAGICVALUE) + return dcloadsyscall(pcunlinknr, path); else - return -1; + return -1; } -void exit (int status) -{ - if (*DCLOADMAGICADDR == DCLOADMAGICVALUE) - dcloadsyscall(pcexitnr); +void exit(int status) { + if(*DCLOADMAGICADDR == DCLOADMAGICVALUE) + dcloadsyscall(pcexitnr); + __exit(status); } -int stat (const char *path, struct stat *st) -{ - if (*DCLOADMAGICADDR == DCLOADMAGICVALUE) - return dcloadsyscall(pcstatnr, path, st); +int stat(const char *path, struct stat *st) { + if(*DCLOADMAGICADDR == DCLOADMAGICVALUE) + return dcloadsyscall(pcstatnr, path, st); else - return -1; + return -1; } -int chmod (const char *path, short mode) -{ - if (*DCLOADMAGICADDR == DCLOADMAGICVALUE) - return dcloadsyscall(pcchmodnr, path, mode); +int chmod(const char *path, short mode) { + if(*DCLOADMAGICADDR == DCLOADMAGICVALUE) + return dcloadsyscall(pcchmodnr, path, mode); else - return -1; + return -1; } -int utime (const char *path, char *times) -{ - if (*DCLOADMAGICADDR == DCLOADMAGICVALUE) - return dcloadsyscall(pcutimenr, path, times); +int utime(const char *path, char *times) { + if(*DCLOADMAGICADDR == DCLOADMAGICVALUE) + return dcloadsyscall(pcutimenr, path, times); else - return -1; + return -1; } -int chdir (const char *path) -{ - if (*DCLOADMAGICADDR == DCLOADMAGICVALUE) - return dcloadsyscall(pcchdirnr, path); +int chdir(const char *path) { + if(*DCLOADMAGICADDR == DCLOADMAGICVALUE) + return dcloadsyscall(pcchdirnr, path); else - return -1; + return -1; } -long time(long *t) -{ - if (*DCLOADMAGICADDR == DCLOADMAGICVALUE) - return dcloadsyscall(pctimenr, t); +long time(long *t) { + if(*DCLOADMAGICADDR == DCLOADMAGICVALUE) + return dcloadsyscall(pctimenr, t); else - return -1; + return -1; } -void assign_wrkmem(unsigned char *wrkmem) -{ - if (*DCLOADMAGICADDR == DCLOADMAGICVALUE) - dcloadsyscall(pcassignwrkmem, wrkmem); +void assign_wrkmem(unsigned char *wrkmem) { + if(*DCLOADMAGICADDR == DCLOADMAGICVALUE) + dcloadsyscall(pcassignwrkmem, wrkmem); } diff --git a/example-src/dcload-syscalls.h b/example-src/dcload-syscalls.h index 585cafb..58c27d3 100644 --- a/example-src/dcload-syscalls.h +++ b/example-src/dcload-syscalls.h @@ -5,20 +5,20 @@ #define O_WRONLY 1 #define O_RDWR 2 -int link (const char *oldpath, const char *newpath); -int read (int file, char *ptr, int len); -int lseek (int file, int ptr, int dir); -int write ( int file, char *ptr, int len); -int close (int file); -int fstat (int file, struct stat *st); -int open (const char *path, int flags); -int creat (const char *path, int mode); -int unlink (const char *path); -void exit (int status); -int stat (const char *path, struct stat *st); -int chmod (const char *path, short mode); -int utime (const char *path, char *times); -int chdir (const char *path); +int link(const char *oldpath, const char *newpath); +int read(int file, char *ptr, int len); +int lseek(int file, int ptr, int dir); +int write( int file, char *ptr, int len); +int close(int file); +int fstat(int file, struct stat *st); +int open(const char *path, int flags); +int creat(const char *path, int mode); +int unlink(const char *path); +void exit(int status); +int stat(const char *path, struct stat *st); +int chmod(const char *path, short mode); +int utime(const char *path, char *times); +int chdir(const char *path); long time(long *t); void assign_wrkmem(unsigned char *wrkmem); diff --git a/example-src/exception-test.c b/example-src/exception-test.c index c0c2036..60507c4 100644 --- a/example-src/exception-test.c +++ b/example-src/exception-test.c @@ -1,5 +1,4 @@ -int main(void) -{ +int main(void) { int i; i = *((volatile unsigned int *)2); diff --git a/host-src/misc/Makefile b/host-src/misc/Makefile index 4f3db8f..a0e34a3 100644 --- a/host-src/misc/Makefile +++ b/host-src/misc/Makefile @@ -1,10 +1,10 @@ include ../../Makefile.cfg -LZOPATH = ../../minilzo.106 +LZOPATH = ../../minilzo.106 -CC = $(HOSTCC) -CFLAGS = $(HOSTCFLAGS) -INCLUDE = -I$(LZOPATH) +CC = $(HOSTCC) +CFLAGS = $(HOSTCFLAGS) +INCLUDE = -I$(LZOPATH) LZOFILES = $(LZOPATH)/minilzo.c $(LZOPATH)/minilzo.h $(LZOPATH)/lzoconf.h .c.o: @@ -20,8 +20,8 @@ minilzo.o: $(LZOFILES) .PHONY : clean clean: - rm -f *.o + -rm -f *.o .PHONY : distclean distclean: clean - rm -f lzo \ No newline at end of file + -rm -f lzo \ No newline at end of file diff --git a/host-src/misc/lzo.c b/host-src/misc/lzo.c index 371ca86..5a61ae4 100644 --- a/host-src/misc/lzo.c +++ b/host-src/misc/lzo.c @@ -32,72 +32,68 @@ static HEAP_ALLOC(wrkmem,LZO1X_1_MEM_COMPRESS); -void usage(void) -{ - printf("usage: lzo <in> <out>\n"); - exit(1); +void usage(void) { + printf("usage: lzo <in> <out>\n"); + exit(1); } -int main(int argc, char *argv[]) -{ - int in, out; - unsigned char * data; - unsigned char * cdata; - int r; - unsigned int length,clength; - - if (argc != 3) - usage(); - - in = open(argv[1], O_RDONLY); - - if (in < 0) { - perror(argv[1]); - exit(1); - } - - out = open(argv[2], O_WRONLY | O_CREAT | O_TRUNC, 0644); - - if (out < 0) { - perror(argv[2]); - exit(1); - } - - length = lseek(in, 0, SEEK_END); - lseek(in, 0, SEEK_SET); - - data = malloc(length); - cdata = malloc(length+length/64 + 16 + 3); - - read(in, data, length); - - if (lzo_init() != LZO_E_OK) - { - printf("lzo_init() failed !!!\n"); - exit(1); - } - - r = lzo1x_1_compress(data,length,cdata,&clength,wrkmem); - if (r == LZO_E_OK) - printf("compressed %lu bytes into %lu bytes\n", - (long) length, (long) clength); - else - { - /* this should NEVER happen */ - printf("internal error - compression failed: %d\n", r); - return 2; - } - /* check for an incompressible block */ - if (clength >= length) - { - printf("This block contains incompressible data.\n"); - return 0; - } - - write(out, cdata, clength); - - close(in); - close(out); - exit(0); +int main(int argc, char *argv[]) { + int in, out; + unsigned char *data; + unsigned char *cdata; + int r; + unsigned int length, clength; + + if(argc != 3) + usage(); + + in = open(argv[1], O_RDONLY); + + if(in < 0) { + perror(argv[1]); + exit(1); + } + + out = open(argv[2], O_WRONLY | O_CREAT | O_TRUNC, 0644); + + if(out < 0) { + perror(argv[2]); + exit(1); + } + + length = lseek(in, 0, SEEK_END); + lseek(in, 0, SEEK_SET); ...<truncated>... hooks/post-receive -- A serial program loader for the Dreamcast. |
From: ljsebald <ljs...@us...> - 2023-06-08 00:15:51
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "A serial program loader for the Dreamcast.". The branch, master has been updated via 62f5b4d83a1f6fede8eb59b333ed25a6299200c1 (commit) via 95628f1737926409ce2fff63f760ecd2f1b5791d (commit) via f9e809d69af432d8ae4da9f3fdb971ccac9662a9 (commit) via f2ee6bfbcd4c72baa6f4d25adaaec65a70c5b305 (commit) via 2dfabbf29cf44a01d5a07afbda11c98918e9aa03 (commit) via c6dab7f29b583359a9412abb06a93ac0b35321ce (commit) via d0767aeceb491d4336ee2792369db2e2453b8272 (commit) via 2b0af8b30f9744d8340f0d84571341849c7f0b32 (commit) via 8401e6587863d0ed9baf2c811c14ed0402327102 (commit) via f429a6f3b4af2d4cc2b4b1880ceb720865b78fff (commit) via 124d4729c619b56e4d052c261bca711c653692f3 (commit) from ac4a00d7165f2b84cea985a5f389a575ddf66ced (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 62f5b4d83a1f6fede8eb59b333ed25a6299200c1 Author: darcagn <da...@pr...> Date: Wed Jun 7 19:15:24 2023 -0500 Set initial speed to a constant 56kbps and rework defaults from Makefile.cfg (#14) commit 95628f1737926409ce2fff63f760ecd2f1b5791d Merge: ac4a00d f9e809d Author: Lawrence Sebald <ljs...@us...> Date: Sun Mar 12 21:47:00 2023 -0400 Merge pull request #9 from sizious/build-compat-updates Additional MinGW/MinGW-w64 build updates. commit f9e809d69af432d8ae4da9f3fdb971ccac9662a9 Author: SiZiOUS <si...@gm...> Date: Sat Mar 11 22:36:03 2023 +0100 Removing useless white spaces in `Makefile.cfg`. Again. commit f2ee6bfbcd4c72baa6f4d25adaaec65a70c5b305 Author: SiZiOUS <si...@gm...> Date: Sat Mar 11 22:24:18 2023 +0100 `dc-tool`: Removing useless white spaces in `Makefile`. commit 2dfabbf29cf44a01d5a07afbda11c98918e9aa03 Author: SiZiOUS <si...@gm...> Date: Sat Mar 11 22:03:23 2023 +0100 `Makefile.cfg`: Adding some comments. commit c6dab7f29b583359a9412abb06a93ac0b35321ce Author: SiZiOUS <si...@gm...> Date: Sat Mar 11 21:25:02 2023 +0100 Use of `STANDALONE_BINARY` for static flag instead of `HOSTLDFLAGS`. STANDALONE_BINARY is now activated by default on Windows (i.e., Cygwin, MinGW/MSYS and MinGW-w64/MSYS2). Added some comments on libbfd. commit d0767aeceb491d4336ee2792369db2e2453b8272 Author: SiZiOUS <si...@gm...> Date: Mon Mar 6 10:08:31 2023 +0100 `dc-tool`: Adding compatibility layer for MinGW/MSYS in case of the toolchains were built on MinGW-w64/MSYS2 Mainly, this is for linking 'dc-tool' with 'libbfd'. Declaring these functions will let us to build 'dc-tool' even if 'sh-elf' toolchain was built on MinGW-w64/MSYS2. The new 'utils.c' file provides the following functions: `vasprintf`, `libintl_asprintf`, `__ms_vsnprintf` and `_imp____acrt_iob_func`. commit 2b0af8b30f9744d8340f0d84571341849c7f0b32 Author: SiZiOUS <si...@gm...> Date: Mon Mar 6 09:47:18 2023 +0100 `dc-tool`: Fix white space typo for `ZLIB_REQUIRED`. Sorry about that. commit 8401e6587863d0ed9baf2c811c14ed0402327102 Author: SiZiOUS <si...@gm...> Date: Mon Mar 6 09:41:19 2023 +0100 `dc-tool`: Adding `-static` on the top and concatenate `LDFLAGS` commit f429a6f3b4af2d4cc2b4b1880ceb720865b78fff Author: SiZiOUS <si...@gm...> Date: Mon Mar 6 09:38:34 2023 +0100 `dc-tool`: Better handling of zlib linking Now `-lz` is added to the command line once at the correct position. commit 124d4729c619b56e4d052c261bca711c653692f3 Author: SiZiOUS <si...@gm...> Date: Mon Mar 6 09:29:39 2023 +0100 `dc-tool`: Adding some comments to `Makefile`. ----------------------------------------------------------------------- Summary of changes: Makefile.cfg | 37 +++++++++++++++-------- host-src/tool/Makefile | 36 ++++++++++++++++------- host-src/tool/dc-tool.c | 22 +++++++------- host-src/tool/utils.c | 73 ++++++++++++++++++++++++++++++++++++++++++++++ target-src/dcload/Makefile | 2 +- target-src/dcload/dcload.c | 6 ++-- 6 files changed, 140 insertions(+), 36 deletions(-) create mode 100644 host-src/tool/utils.c diff --git a/Makefile.cfg b/Makefile.cfg index 561255c..56bc457 100644 --- a/Makefile.cfg +++ b/Makefile.cfg @@ -12,7 +12,6 @@ HOSTLDFLAGS = -L/usr/local/lib # For MinGW/MSYS, MinGW-w64/MSYS2 and Cygwin ifdef WINDOWS HOSTCFLAGS += -D_WIN32 - HOSTLDFLAGS += -static EXECUTABLEEXTENSION = .exe endif @@ -23,8 +22,9 @@ TARGETPREFIX = /opt/toolchains/dc/sh-elf # dir to install dc-tool in TOOLINSTALLDIR = /opt/toolchains/dc/bin -# To build dc-tool, we need to use libelf or libfd -# By default, libelf is used +# To build dc-tool, we need to use libelf or libbfd +# By default, libelf is used, except for MinGW/MSYS which uses libbfd. +# libbfd is installed using dc-chain, an utility provided with KallistiOS. # Define this if you want to use libbfd instead of libelf (which is default) WITH_BFD = 0 @@ -34,10 +34,10 @@ ifdef MINGW WITH_BFD = 1 endif -# You may have to change the paths for BFDLIB and BFDINCLUDE to the correct -# ones for your system. These must point to your sh-elf bfd, not the system one! -# If you built the dc-chain with the v0.4, you'll have it installed in the -# correct location. +# You may have to change the paths for BFDLIB and BFDINCLUDE to the correct +# ones for your system. These must point to your sh-elf BFD, not the system one! +# If you built your Sega Dreamcast toolchains with dc-chain, you'll have it +# installed in the correct location. BFDLIB = $(TARGETPREFIX)/lib BFDINCLUDE = $(TARGETPREFIX)/include @@ -60,7 +60,7 @@ TARGETLD = $(TARGETPREFIX)/bin/sh-elf-ld # set TARGETCCVER to 3 or 4, depending on your SH compiler version (gcc 3.x or gcc 4.x) # this line tries to detect the version automatically - +# This only matters for building the example sources. # if version > 4 then it's 4 TARGETCCVER = $(shell $(TARGETCC) --version | head -1 | sed "s/.* \([[:digit:]][[:digit:]]*\)\.[[:digit:]][[:digit:]]*.*/\1/") ifeq ($(shell test $(TARGETCCVER) -gt 4; echo $$?),0) @@ -69,23 +69,36 @@ endif # You generally shouldn't change this unless you are making forked # versions (or test versions) -VERSION = 1.0.6 +# Version numbers must be of the form x.x.x +VERSION = 1.0.6 # Define this if you want a standalone, statically linked, no dependency binary -# This is on by default for MinGW/MSYS #STANDALONE_BINARY = 1 +# This is on by default for Windows (MinGW/MSYS, MinGW-w64/MSYS2 and Cygwin) +ifdef WINDOWS + STANDALONE_BINARY = 1 +endif + # this is the default port for dc-tool, it can be changed on the commandline +# used for *nix systems SERIALDEVICE = /dev/ttyS0 +# alternative setting for USB-based serial interfaces +#SERIALDEVICE = /dev/ttyUSB0 # macOS -- you'll need to go look in /dev to see what the actual device # name is, and depending on the device, it must be plugged into the same # port each time. #SERIALDEVICE = /dev/cu.usbserial-5B24 +# Windows -- it's usually COM1 ifdef WINDOWS SERIALDEVICE = COM1 endif -# default serial speed - YOU DO NOT NEED TO CHANGE THIS -SERIALSPEED = 57600 +# default speed for dc-tool - after initial connection is established, connection +# speed will change to this value, same as using the -b argument +# value must be one of 9600, 19200, 38400, 57600, 115200, 500000, or 1500000 +TOOL_DEFAULT_SPEED = 57600 +# USB-based serial devices can potentially achieve speeds of 500000 or 1500000 baud +#TOOL_DEFAULT_SPEED = 500000 diff --git a/host-src/tool/Makefile b/host-src/tool/Makefile index 7b8668f..bde45de 100644 --- a/host-src/tool/Makefile +++ b/host-src/tool/Makefile @@ -3,10 +3,20 @@ include ../../Makefile.cfg LZOPATH = ../../minilzo.106 CC = $(HOSTCC) -CFLAGS = $(HOSTCFLAGS) -DDCLOAD_VERSION=\"$(VERSION)\" -DBAUD_RATE=$(SERIALSPEED) -DSERIALDEVICE="\"$(SERIALDEVICE)\"" -DHAVE_GETOPT -DB1500000 -DB500000 +CFLAGS = $(HOSTCFLAGS) -DDCLOAD_VERSION=\"$(VERSION)\" -DDEFAULT_SPEED=$(TOOL_DEFAULT_SPEED) -DSERIALDEVICE="\"$(SERIALDEVICE)\"" -DHAVE_GETOPT -DB1500000 -DB500000 LDFLAGS = $(HOSTLDFLAGS) -INCLUDE = -I$(LZOPATH) -I/usr/local/include +INCLUDE = -I$(LZOPATH) -I/usr/local/include +# Adding static flag if asked +ifeq ($(STANDALONE_BINARY),1) + LDFLAGS += -static +endif + +# Determine if we need zlib or not in that context for building dc-tool +# The purpose of that is just to have '-lz' once at the end of the command line +ZLIB_REQUIRED := 0 + +# Linking with 'libelf' or 'libbfd' (sh-elf), depending of 'Makefile.cfg' ifeq ($(WITH_BFD),1) # Starting from Binutils 2.40, SFrame is required when using BFD LIBSFRAME = @@ -15,29 +25,33 @@ ifeq ($(WITH_BFD),1) endif CFLAGS += -DWITH_BFD - LDFLAGS = -L$(BFDLIB) -lbfd $(LIBSFRAME) -liberty -lintl -lz + LDFLAGS += -L$(BFDLIB) -lbfd $(LIBSFRAME) -liberty -lintl INCLUDE += -I$(BFDINCLUDE) + + ZLIB_REQUIRED := 1 else - LDFLAGS = -L$(ELFLIB) -lelf + LDFLAGS += -L$(ELFLIB) -lelf INCLUDE += -I$(ELFINCLUDE) endif -# Additional libraries for MinGW/MSYS +# Additional libraries for MinGW/MSYS or MinGW-w64/MSYS2 ifdef MINGW32 LDFLAGS += -lws2_32 -lwsock32 -liconv + ZLIB_REQUIRED := 1 endif -ifdef STANDALONE_BINARY - LDFLAGS += -lz -static +# Add zlib to the command line end... if required +ifeq ($(ZLIB_REQUIRED),1) + LDFLAGS += -lz endif DCTOOL = dc-tool-ser$(EXECUTABLEEXTENSION) -OBJECTS = dc-tool.o minilzo.o syscalls.o unlink.o +OBJECTS = dc-tool.o minilzo.o syscalls.o unlink.o utils.o LZOFILES = $(LZOPATH)/minilzo.c $(LZOPATH)/minilzo.h $(LZOPATH)/lzoconf.h .c.o: - $(CC) $(CFLAGS) $(INCLUDE) -o $@ -c $< + $(CC) $(CFLAGS) $(INCLUDE) -o $@ -c $< all: $(DCTOOL) @@ -48,7 +62,7 @@ minilzo.o: $(LZOFILES) $(CC) $(CFLAGS) $(INCLUDE) -o $@ -c $< .PHONY : install -install: $(DCTOOL) | $(TOOLINSTALLDIR) +install: $(DCTOOL) | $(TOOLINSTALLDIR) cp $(DCTOOL) $(TOOLINSTALLDIR) $(TOOLINSTALLDIR): -mkdir $(TOOLINSTALLDIR) @@ -58,5 +72,5 @@ clean: rm -f $(OBJECTS) .PHONY : distclean -distclean: clean +distclean: clean rm -f $(DCTOOL) diff --git a/host-src/tool/dc-tool.c b/host-src/tool/dc-tool.c index 8883182..b4651b2 100644 --- a/host-src/tool/dc-tool.c +++ b/host-src/tool/dc-tool.c @@ -71,6 +71,8 @@ SOCKET gdb_server_socket = 0; SOCKET socket_fd = 0; #endif +#define INITIAL_SPEED 57600 + #define DCLOADBUFFER 16384 /* was 8192 */ #ifdef _WIN32 #define DATA_BITS 8 @@ -576,8 +578,8 @@ int open_serial(char *devicename, unsigned int speed, unsigned int *speedtest) speedsel = B9600; break; default: - printf("Unsupported baudrate (%d) - switching to default (%d)\n", speed, BAUD_RATE); - *speedtest = speed = BAUD_RATE; + printf("Unsupported baudrate (%d) - falling back to initial baudrate (%d)\n", speed, INITIAL_SPEED); + *speedtest = speed = INITIAL_SPEED; break; } } @@ -761,7 +763,7 @@ void usage(void) printf("-a <address> Set address to <address> (default: 0x8c010000)\n"); printf("-s <size> Set size to <size>\n"); printf("-t <device> Use <device> to communicate with dc (default: %s)\n", SERIALDEVICE); - printf("-b <baudrate> Use <baudrate> (default: %d)\n", BAUD_RATE); + printf("-b <baudrate> Use <baudrate> (default: %d)\n", DEFAULT_SPEED); printf("-e Try alternate 115200 (must also use -b 115200)\n"); printf("-E Use an external clock for the DC's serial port\n"); printf("-n Do not attach console and fileserver\n"); @@ -1180,7 +1182,7 @@ int main(int argc, char *argv[]) unsigned int dumbterm = 0; unsigned int quiet = 0; unsigned char command = 0; - unsigned int dummy, speed = BAUD_RATE; + unsigned int dummy, speed = DEFAULT_SPEED; char *device_name = SERIALDEVICE; unsigned int cdfs_redir = 0; unsigned char *isofile = 0; @@ -1310,16 +1312,16 @@ int main(int argc, char *argv[]) printf("External clock usage enabled\n"); /* test for resonable baud - this is for POSIX systems */ - if (speed != BAUD_RATE) { + if (speed != INITIAL_SPEED) { if (open_serial(device_name, speed, &speed)<0) return 1; close_serial(); } - if (open_serial(device_name, BAUD_RATE, &dummy)<0) + if (open_serial(device_name, INITIAL_SPEED, &dummy)<0) return 1; - if (speed != BAUD_RATE) + if (speed != INITIAL_SPEED) change_speed(device_name, speed); switch (command) { @@ -1342,9 +1344,9 @@ int main(int argc, char *argv[]) case 'u': printf("Upload <%s> at <0x%x>\n", filename, address); upload(filename, address); - change_speed(device_name, BAUD_RATE); + change_speed(device_name, INITIAL_SPEED); break; - case 'd': + case 'd': if (!size) { printf("You must specify a size (-s <size>) with download (-d <filename>)\n"); cleanup(); @@ -1353,7 +1355,7 @@ int main(int argc, char *argv[]) printf("Download %d bytes at <0x%x> to <%s>\n", size, address, filename); download(filename, address, size, quiet); - change_speed(device_name, BAUD_RATE); + change_speed(device_name, INITIAL_SPEED); break; default: if (dumbterm) diff --git a/host-src/tool/utils.c b/host-src/tool/utils.c new file mode 100644 index 0000000..ad5708f --- /dev/null +++ b/host-src/tool/utils.c @@ -0,0 +1,73 @@ +#include <stdio.h> +#include <stdlib.h> +#include <stdarg.h> + +/* Detect MinGW/MSYS vs. MinGW-w64/MSYS2 */ +#ifdef __MINGW32__ +#include <_mingw.h> +# ifdef __MINGW64_VERSION_MAJOR +# define __RT_MINGW_W64__ +# else +# define __RT_MINGW_ORG__ +# endif +#endif /* __MINGW32__ */ + +#ifdef __RT_MINGW_ORG__ + +/* + * Compatibility layer for original, legacy MinGW/MSYS environment. + * This allow toolchains built on MinGW-w64/MSYS2 to be usable with MinGW/MSYS. + * Mainly, this is for linking 'dc-tool' with 'libbfd'. Declaring these + * functions will let us to build 'dc-tool' even if 'sh-elf' toolchain was built + * on MinGW-w64/MSYS2. + */ + +// Thanks to Dietrich Epp +// See: https://stackoverflow.com/a/40160038 +int vasprintf(char **strp, const char *fmt, va_list ap) { + int len = _vscprintf(fmt, ap); + if (len == -1) { + return -1; + } + size_t size = (size_t)len + 1; + char *str = malloc(size); + if (!str) { + return -1; + } + int r = __mingw_vsnprintf(str, len + 1, fmt, ap); + if (r == -1) { + free(str); + return -1; + } + *strp = str; + return r; +} + +// Thanks to Dietrich Epp +// See: https://stackoverflow.com/a/40160038 +int __cdecl __MINGW_NOTHROW libintl_asprintf(char **strp, const char *fmt, ...) { + va_list ap; + va_start(ap, fmt); + int r = vasprintf(strp, fmt, ap); + va_end(ap); + return r; +} + +// See: https://stackoverflow.com/a/60380005 +int __cdecl __MINGW_NOTHROW __ms_vsnprintf(char *buffer, size_t count, const char *format, va_list argptr) { + return __mingw_vsnprintf(buffer, count, format, argptr); +} + +// Thanks to Kenji Uno and god +// See: https://github.com/HiraokaHyperTools/libacrt_iob_func +// See: https://stackoverflow.com/a/30894349 +FILE * __cdecl __MINGW_NOTHROW _imp____acrt_iob_func(int handle) { + switch (handle) { + case 0: return stdin; + case 1: return stdout; + case 2: return stderr; + } + return NULL; +} + +#endif /* __RT_MINGW_ORG__ */ diff --git a/target-src/dcload/Makefile b/target-src/dcload/Makefile index 01572c0..1ec8067 100644 --- a/target-src/dcload/Makefile +++ b/target-src/dcload/Makefile @@ -4,7 +4,7 @@ LZOPATH = ../../minilzo.106 LZO = ../../host-src/misc/lzo CC = $(TARGETCC) -CFLAGS = $(TARGETCFLAGS) -DDCLOAD_VERSION=\"$(VERSION)\" -DSERIALSPEED=$(SERIALSPEED) +CFLAGS = $(TARGETCFLAGS) -DDCLOAD_VERSION=\"$(VERSION)\" INCLUDE = -I$(LZOPATH) -I../../target-inc OBJCOPY = $(TARGETOBJCOPY) diff --git a/target-src/dcload/dcload.c b/target-src/dcload/dcload.c index 5fc8c39..253c43a 100644 --- a/target-src/dcload/dcload.c +++ b/target-src/dcload/dcload.c @@ -25,6 +25,8 @@ #define NAME "dcload-serial " DCLOAD_VERSION +#define INITIAL_SPEED 57600 + #define VIDMODEREG (volatile unsigned int *)0xa05f8044 #define VIDBORDER (volatile unsigned int *)0xa05f8040 @@ -312,7 +314,7 @@ int main(void) unsigned int console; unsigned int start; - scif_init(SERIALSPEED); + scif_init(INITIAL_SPEED); cdfs_redir_save(); /* will only save value once */ cdfs_redir_disable(); @@ -418,7 +420,7 @@ int main(void) scif_puts("\n"); break; default: - scif_init(SERIALSPEED); + scif_init(INITIAL_SPEED); break; } } hooks/post-receive -- A serial program loader for the Dreamcast. |
From: darcagn <da...@us...> - 2023-06-06 18:05:19
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "A pseudo Operating System for the Dreamcast.". The branch, master has been updated via 1c3282cc89b5ca2be893a8aca08d070212aa87a2 (commit) via 13a8ac6035fb52873aa038d70245508026a10a7b (commit) via 1cb7c1dddc6640789211f73c7af549a569df71f1 (commit) via 6b14ac4af1dd3294673157484d076db187284838 (commit) via 195b5e24f08d8e38043c1999eb58b1610dd06ecb (commit) via 070c8ee7d33bdc5dc00c1995bd4677c5bb186b1b (commit) from 7d888dc3c4aedc0ce62289d15ebe95f5e69d87ed (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 1c3282cc89b5ca2be893a8aca08d070212aa87a2 Merge: 070c8ee 13a8ac6 Author: darcagn <da...@pr...> Date: Tue Jun 6 13:03:26 2023 -0500 Merge pull request #243 from KallistiOS/patch-oldlib Update older newlib patches to move lock.h, disable syscalls cleanly. commit 13a8ac6035fb52873aa038d70245508026a10a7b Author: Quzar <qu...@co...> Date: Tue Jun 6 08:31:47 2023 -0400 Move Newlib 4.1.0 patch into historical as it is not used by any of the sample configs. commit 1cb7c1dddc6640789211f73c7af549a569df71f1 Author: Quzar <qu...@co...> Date: Tue Jun 6 08:28:24 2023 -0400 Newlib 3.3.0 also doesn't respect the disable syscalls flag, so only removing lock.h commit 6b14ac4af1dd3294673157484d076db187284838 Author: Quzar <qu...@co...> Date: Tue Jun 6 08:23:50 2023 -0400 Newlib 2.0.0 doesn't respect the disable-syscalls flag, so keep patching them out, but remove lock.h commit 195b5e24f08d8e38043c1999eb58b1610dd06ecb Author: Quzar <qu...@co...> Date: Tue Jun 6 00:48:12 2023 -0400 Update older newlib patches to move lock.h, disable syscalls cleanly. commit 070c8ee7d33bdc5dc00c1995bd4677c5bb186b1b Author: Donald Haase <qu...@ya...> Date: Tue Jun 6 00:19:35 2023 -0400 Newlib lock.h fix (#242) * Change lock.h to get copied directly into newlib, move lock.h patching into patch.mk --------- Co-authored-by: Quzar <qu...@co...> ----------------------------------------------------------------------- Summary of changes: .../patches/{ => historical}/newlib-4.1.0-kos.diff | 367 +-------------------- utils/dc-chain/patches/newlib-2.0.0-kos.diff | 55 --- utils/dc-chain/patches/newlib-3.3.0-kos.diff | 56 ---- utils/dc-chain/scripts/newlib.mk | 1 - utils/dc-chain/scripts/patch.mk | 6 + 5 files changed, 8 insertions(+), 477 deletions(-) rename utils/dc-chain/patches/{ => historical}/newlib-4.1.0-kos.diff (52%) diff --git a/utils/dc-chain/patches/newlib-4.1.0-kos.diff b/utils/dc-chain/patches/historical/newlib-4.1.0-kos.diff similarity index 52% rename from utils/dc-chain/patches/newlib-4.1.0-kos.diff rename to utils/dc-chain/patches/historical/newlib-4.1.0-kos.diff index 162d36c..af9dc8f 100755 --- a/utils/dc-chain/patches/newlib-4.1.0-kos.diff +++ b/utils/dc-chain/patches/historical/newlib-4.1.0-kos.diff @@ -243,374 +243,11 @@ diff --color -ruN newlib-4.1.0/newlib/libc/stdlib/assert.c newlib-4.1.0-kos/newl #ifndef HAVE_ASSERT_FUNC /* func can be NULL, in which case no function information is given. */ void -@@ -72,3 +74,5 @@ +@@ -72,3 +74,7 @@ __assert_func (file, line, NULL, failedexpr); /* NOTREACHED */ } +#endif -+ -diff --color -ruN newlib-4.1.0/newlib/libc/sys/sh/ftruncate.c newlib-4.1.0-kos/newlib/libc/sys/sh/ftruncate.c ---- newlib-4.1.0/newlib/libc/sys/sh/ftruncate.c 2023-02-01 22:17:03.742363687 -0600 -+++ newlib-4.1.0-kos/newlib/libc/sys/sh/ftruncate.c 2023-02-01 22:18:00.451489165 -0600 -@@ -1,9 +1,2 @@ --#include <_ansi.h> --#include <sys/types.h> --#include "sys/syscall.h" -+/* Nothing here */ - --int --ftruncate (int file, off_t length) --{ -- return __trap34 (SYS_ftruncate, file, length, 0); --} -diff --color -ruN newlib-4.1.0/newlib/libc/sys/sh/sys/lock.h newlib-4.1.0-kos/newlib/libc/sys/sh/sys/lock.h ---- newlib-4.1.0/newlib/libc/sys/sh/sys/lock.h 1969-12-31 18:00:00.000000000 -0600 -+++ newlib-4.1.0-kos/newlib/libc/sys/sh/sys/lock.h 2023-02-01 22:18:00.451489165 -0600 -@@ -0,0 +1,52 @@ -+/* KallistiOS ##version## -+ -+ lock_common.h -+ Copyright (C)2004 Megan Potter -+ -+*/ -+ -+#ifndef __SYS_LOCK_H__ -+#define __SYS_LOCK_H__ -+ -+typedef struct { -+ void *owner; -+ int nest; -+ volatile int lock; -+} __newlib_recursive_lock_t; -+ -+#define __NEWLIB_RECURSIVE_LOCK_INIT { (void *)0, 0, 0 } -+ -+typedef volatile int __newlib_lock_t; -+#define __NEWLIB_LOCK_INIT 0 -+ -+typedef __newlib_lock_t _LOCK_T; -+typedef __newlib_recursive_lock_t _LOCK_RECURSIVE_T; -+ -+#define __LOCK_INIT(class,lock) class _LOCK_T lock = __NEWLIB_LOCK_INIT; -+#define __LOCK_INIT_RECURSIVE(class,lock) class _LOCK_RECURSIVE_T lock = __NEWLIB_RECURSIVE_LOCK_INIT; -+#define __lock_init(lock) __newlib_lock_init(&(lock)) -+#define __lock_init_recursive(lock) __newlib_lock_init_recursive(&(lock)) -+#define __lock_close(lock) __newlib_lock_close(&(lock)) -+#define __lock_close_recursive(lock) __newlib_lock_close_recursive(&(lock)) -+#define __lock_acquire(lock) __newlib_lock_acquire(&(lock)) -+#define __lock_acquire_recursive(lock) __newlib_lock_acquire_recursive(&(lock)) -+#define __lock_try_acquire(lock) __newlib_lock_try_acquire(&(lock)) -+#define __lock_try_acquire_recursive(lock) __newlib_lock_try_acquire_recursive(&(lock)) -+#define __lock_release(lock) __newlib_lock_release(&(lock)) -+#define __lock_release_recursive(lock) __newlib_lock_release_recursive(&(lock)) -+ -+void __newlib_lock_init(__newlib_lock_t *); -+void __newlib_lock_close(__newlib_lock_t *); -+void __newlib_lock_acquire(__newlib_lock_t *); -+void __newlib_lock_try_acquire(__newlib_lock_t *); -+void __newlib_lock_release(__newlib_lock_t *); -+ -+void __newlib_lock_init_recursive(__newlib_recursive_lock_t *); -+void __newlib_lock_close_recursive(__newlib_recursive_lock_t *); -+void __newlib_lock_acquire_recursive(__newlib_recursive_lock_t *); -+void __newlib_lock_try_acquire_recursive(__newlib_recursive_lock_t *); -+void __newlib_lock_release_recursive(__newlib_recursive_lock_t *); -+ -+ -+#endif // __NEWLIB_LOCK_COMMON_H -+ -diff --color -ruN newlib-4.1.0/newlib/libc/sys/sh/syscalls.c newlib-4.1.0-kos/newlib/libc/sys/sh/syscalls.c ---- newlib-4.1.0/newlib/libc/sys/sh/syscalls.c 2023-02-01 22:17:03.742363687 -0600 -+++ newlib-4.1.0-kos/newlib/libc/sys/sh/syscalls.c 2023-02-01 22:18:00.451489165 -0600 -@@ -1,228 +1,3 @@ --#include <_ansi.h> --#include <sys/types.h> --#include <sys/stat.h> --#include <sys/time.h> --#include "sys/syscall.h" --int errno; +// This is put in here to cause link errors if a proper newlib isn't present. +int __newlib_kos_patch = 1; - --/* This is used by _sbrk. */ --register char *stack_ptr asm ("r15"); -- --int --_read (int file, -- char *ptr, -- int len) --{ -- return __trap34 (SYS_read, file, ptr, len); --} -- --int --_lseek (int file, -- int ptr, -- int dir) --{ -- return __trap34 (SYS_lseek, file, ptr, dir); --} -- --int --_write ( int file, -- char *ptr, -- int len) --{ -- return __trap34 (SYS_write, file, ptr, len); --} -- --int --_close (int file) --{ -- return __trap34 (SYS_close, file, 0, 0); --} -- --int --_link (char *old, char *new) --{ -- return -1; --} -- --caddr_t --_sbrk (int incr) --{ -- extern char end; /* Defined by the linker */ -- static char *heap_end; -- char *prev_heap_end; -- -- if (heap_end == 0) -- { -- heap_end = &end; -- } -- prev_heap_end = heap_end; -- if (heap_end + incr > stack_ptr) -- { -- _write (1, "Heap and stack collision\n", 25); -- abort (); -- } -- heap_end += incr; -- return (caddr_t) prev_heap_end; --} -- --int --_fstat (int file, -- struct stat *st) --{ -- st->st_mode = S_IFCHR; -- return 0; --} -- --int --_open (const char *path, -- int flags) --{ -- return __trap34 (SYS_open, path, flags, 0); --} -- --int --_creat (const char *path, -- int mode) --{ -- return __trap34 (SYS_creat, path, mode, 0); --} -- --int --_unlink () --{ -- return -1; --} -- --isatty (fd) -- int fd; --{ -- return 1; --} -- --_isatty (fd) -- int fd; --{ -- return 1; --} -- -- --_exit (n) --{ -- return __trap34 (SYS_exit, n, 0, 0); --} -- --_kill (n, m) --{ -- return __trap34 (SYS_exit, 0xdead, 0, 0); --} -- --_getpid (n) --{ -- return 1; --} -- --_raise () --{ --} -- --int --_stat (const char *path, struct stat *st) -- --{ -- return __trap34 (SYS_stat, path, st, 0); --} -- --int --_chmod (const char *path, short mode) --{ -- return __trap34 (SYS_chmod, path, mode); --} -- --int --_chown (const char *path, short owner, short group) --{ -- return __trap34 (SYS_chown, path, owner, group); --} -- --int --_utime (path, times) -- const char *path; -- char *times; --{ -- return __trap34 (SYS_utime, path, times); --} -- --int --_fork () --{ -- return __trap34 (SYS_fork); --} -- --int --_wait (statusp) -- int *statusp; --{ -- return __trap34 (SYS_wait); --} -- --int --_execve (const char *path, char *const argv[], char *const envp[]) --{ -- return __trap34 (SYS_execve, path, argv, envp); --} -- --int --_execv (const char *path, char *const argv[]) --{ -- return __trap34 (SYS_execv, path, argv); --} -- --int --_pipe (int *fd) --{ -- return __trap34 (SYS_pipe, fd); --} -- --/* This is only provided because _gettimeofday_r and _times_r are -- defined in the same module, so we avoid a link error. */ --clock_t --_times (struct tms *tp) --{ -- return -1; --} -- --int --_gettimeofday (struct timeval *tv, void *tz) --{ -- tv->tv_usec = 0; -- tv->tv_sec = __trap34 (SYS_time); -- return 0; --} -- --static inline int --__setup_argv_for_main (int argc) --{ -- char **argv; -- int i = argc; -- -- argv = __builtin_alloca ((1 + argc) * sizeof (*argv)); -- -- argv[i] = NULL; -- while (i--) { -- argv[i] = __builtin_alloca (1 + __trap34 (SYS_argnlen, i)); -- __trap34 (SYS_argn, i, argv[i]); -- } -- -- return main (argc, argv); --} -- --int --__setup_argv_and_call_main () --{ -- int argc = __trap34 (SYS_argc); -- -- if (argc <= 0) -- return main (argc, NULL); -- else -- return __setup_argv_for_main (argc); --} -diff --color -ruN newlib-4.1.0/newlib/libc/sys/sh/trap.S newlib-4.1.0-kos/newlib/libc/sys/sh/trap.S ---- newlib-4.1.0/newlib/libc/sys/sh/trap.S 2023-02-01 22:17:03.742363687 -0600 -+++ newlib-4.1.0-kos/newlib/libc/sys/sh/trap.S 2023-02-01 22:18:00.451489165 -0600 -@@ -1,43 +0,0 @@ --#if __SH5__ -- .mode SHmedia --#if __SH5__ == 32 && __SHMEDIA__ -- .section .text..SHmedia32, "ax" --#else -- .text --#endif -- .global ___trap34 --___trap34: -- movi 34, r0 -- trapa r0 -- pt/l ret, tr1 -- ptabs/l r18, tr0 -- beqi r1, 0, tr1 --#if __SH5__ == 64 -- movi ((_errno >> 48) & 65535), r0 -- shori ((_errno >> 32) & 65535), r0 -- shori ((_errno >> 16) & 65535), r0 --#else -- movi ((_errno >> 16) & 65535), r0 --#endif -- shori (_errno & 65535), r0 -- stx.l r0, r63, r1 --ret: -- blink tr0, r63 -- --#else -- .text -- .global ___trap34 --___trap34: -- trapa #34 -- tst r1,r1 ! r1 is errno -- bt ret -- mov.l perrno,r2 -- mov.l r1,@r2 --ret: -- rts -- nop -- -- .align 2 --perrno: -- .long _errno --#endif /* ! __SH5__ */ -diff --color -ruN newlib-4.1.0/newlib/libc/sys/sh/truncate.c newlib-4.1.0-kos/newlib/libc/sys/sh/truncate.c ---- newlib-4.1.0/newlib/libc/sys/sh/truncate.c 2023-02-01 22:17:03.742363687 -0600 -+++ newlib-4.1.0-kos/newlib/libc/sys/sh/truncate.c 2023-02-01 22:18:00.452489167 -0600 -@@ -1,9 +1,2 @@ --#include <_ansi.h> --#include <sys/types.h> --#include "sys/syscall.h" -+/* Nothing here. */ - --int --truncate (const char *path, off_t length) --{ -- return __trap34 (SYS_truncate, path, length, 0); --} ++ diff --git a/utils/dc-chain/patches/newlib-2.0.0-kos.diff b/utils/dc-chain/patches/newlib-2.0.0-kos.diff index e618b3c..5fe6d24 100644 --- a/utils/dc-chain/patches/newlib-2.0.0-kos.diff +++ b/utils/dc-chain/patches/newlib-2.0.0-kos.diff @@ -147,61 +147,6 @@ diff -ruN newlib-2.0.0/newlib/libc/sys/sh/ftruncate.c newlib-2.0.0-kos/newlib/li - return __trap34 (SYS_ftruncate, file, length, 0); -} +/* Nothing here. */ -diff -ruN newlib-2.0.0/newlib/libc/sys/sh/sys/lock.h newlib-2.0.0-kos/newlib/libc/sys/sh/sys/lock.h ---- newlib-2.0.0/newlib/libc/sys/sh/sys/lock.h 1969-12-31 19:00:00.000000000 -0500 -+++ newlib-2.0.0-kos/newlib/libc/sys/sh/sys/lock.h 2013-05-18 00:26:13.000000000 -0400 -@@ -0,0 +1,51 @@ -+/* KallistiOS ##version## -+ -+ lock_common.h -+ Copyright (C)2004 Megan Potter -+ -+*/ -+ -+#ifndef __SYS_LOCK_H__ -+#define __SYS_LOCK_H__ -+ -+typedef struct { -+ void * owner; -+ int nest; -+ volatile int lock; -+} __newlib_recursive_lock_t; -+ -+#define __NEWLIB_RECURSIVE_LOCK_INIT { (void *)0, 0, 0 } -+ -+typedef volatile int __newlib_lock_t; -+#define __NEWLIB_LOCK_INIT 0 -+ -+typedef __newlib_lock_t _LOCK_T; -+typedef __newlib_recursive_lock_t _LOCK_RECURSIVE_T; -+ -+#define __LOCK_INIT(class,lock) class _LOCK_T lock = __NEWLIB_LOCK_INIT; -+#define __LOCK_INIT_RECURSIVE(class,lock) class _LOCK_RECURSIVE_T lock = __NEWLIB_RECURSIVE_LOCK_INIT; -+#define __lock_init(lock) __newlib_lock_init(&(lock)) -+#define __lock_init_recursive(lock) __newlib_lock_init_recursive(&(lock)) -+#define __lock_close(lock) __newlib_lock_close(&(lock)) -+#define __lock_close_recursive(lock) __newlib_lock_close_recursive(&(lock)) -+#define __lock_acquire(lock) __newlib_lock_acquire(&(lock)) -+#define __lock_acquire_recursive(lock) __newlib_lock_acquire_recursive(&(lock)) -+#define __lock_try_acquire(lock) __newlib_lock_try_acquire(&(lock)) -+#define __lock_try_acquire_recursive(lock) __newlib_lock_try_acquire_recursive(&(lock)) -+#define __lock_release(lock) __newlib_lock_release(&(lock)) -+#define __lock_release_recursive(lock) __newlib_lock_release_recursive(&(lock)) -+ -+void __newlib_lock_init(__newlib_lock_t *); -+void __newlib_lock_close(__newlib_lock_t *); -+void __newlib_lock_acquire(__newlib_lock_t *); -+void __newlib_lock_try_acquire(__newlib_lock_t *); -+void __newlib_lock_release(__newlib_lock_t *); -+ -+void __newlib_lock_init_recursive(__newlib_recursive_lock_t *); -+void __newlib_lock_close_recursive(__newlib_recursive_lock_t *); -+void __newlib_lock_acquire_recursive(__newlib_recursive_lock_t *); -+void __newlib_lock_try_acquire_recursive(__newlib_recursive_lock_t *); -+void __newlib_lock_release_recursive(__newlib_recursive_lock_t *); -+ -+ -+#endif // __NEWLIB_LOCK_COMMON_H diff -ruN newlib-2.0.0/newlib/libc/sys/sh/syscalls.c newlib-2.0.0-kos/newlib/libc/sys/sh/syscalls.c --- newlib-2.0.0/newlib/libc/sys/sh/syscalls.c 2008-01-21 19:24:45.000000000 -0500 +++ newlib-2.0.0-kos/newlib/libc/sys/sh/syscalls.c 2013-05-18 00:26:46.000000000 -0400 diff --git a/utils/dc-chain/patches/newlib-3.3.0-kos.diff b/utils/dc-chain/patches/newlib-3.3.0-kos.diff index 24f19f8..2a2991f 100644 --- a/utils/dc-chain/patches/newlib-3.3.0-kos.diff +++ b/utils/dc-chain/patches/newlib-3.3.0-kos.diff @@ -263,62 +263,6 @@ diff -ruN newlib-3.3.0/newlib/libc/sys/sh/ftruncate.c newlib-3.3.0-kos/newlib/li -{ - return __trap34 (SYS_ftruncate, file, length, 0); -} -diff -ruN newlib-3.3.0/newlib/libc/sys/sh/sys/lock.h newlib-3.3.0-kos/newlib/libc/sys/sh/sys/lock.h ---- newlib-3.3.0/newlib/libc/sys/sh/sys/lock.h 1969-12-31 19:00:00.000000000 -0500 -+++ newlib-3.3.0-kos/newlib/libc/sys/sh/sys/lock.h 2021-02-24 21:52:38.000299800 -0500 -@@ -0,0 +1,52 @@ -+/* KallistiOS ##version## -+ -+ lock_common.h -+ Copyright (C)2004 Megan Potter -+ -+*/ -+ -+#ifndef __SYS_LOCK_H__ -+#define __SYS_LOCK_H__ -+ -+typedef struct { -+ void *owner; -+ int nest; -+ volatile int lock; -+} __newlib_recursive_lock_t; -+ -+#define __NEWLIB_RECURSIVE_LOCK_INIT { (void *)0, 0, 0 } -+ -+typedef volatile int __newlib_lock_t; -+#define __NEWLIB_LOCK_INIT 0 -+ -+typedef __newlib_lock_t _LOCK_T; -+typedef __newlib_recursive_lock_t _LOCK_RECURSIVE_T; -+ -+#define __LOCK_INIT(class,lock) class _LOCK_T lock = __NEWLIB_LOCK_INIT; -+#define __LOCK_INIT_RECURSIVE(class,lock) class _LOCK_RECURSIVE_T lock = __NEWLIB_RECURSIVE_LOCK_INIT; -+#define __lock_init(lock) __newlib_lock_init(&(lock)) -+#define __lock_init_recursive(lock) __newlib_lock_init_recursive(&(lock)) -+#define __lock_close(lock) __newlib_lock_close(&(lock)) -+#define __lock_close_recursive(lock) __newlib_lock_close_recursive(&(lock)) -+#define __lock_acquire(lock) __newlib_lock_acquire(&(lock)) -+#define __lock_acquire_recursive(lock) __newlib_lock_acquire_recursive(&(lock)) -+#define __lock_try_acquire(lock) __newlib_lock_try_acquire(&(lock)) -+#define __lock_try_acquire_recursive(lock) __newlib_lock_try_acquire_recursive(&(lock)) -+#define __lock_release(lock) __newlib_lock_release(&(lock)) -+#define __lock_release_recursive(lock) __newlib_lock_release_recursive(&(lock)) -+ -+void __newlib_lock_init(__newlib_lock_t *); -+void __newlib_lock_close(__newlib_lock_t *); -+void __newlib_lock_acquire(__newlib_lock_t *); -+void __newlib_lock_try_acquire(__newlib_lock_t *); -+void __newlib_lock_release(__newlib_lock_t *); ...<truncated>... hooks/post-receive -- A pseudo Operating System for the Dreamcast. |
From: ljsebald <ljs...@us...> - 2023-06-06 02:03:45
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "An ethernet program loader for the Dreamcast.". The branch, master has been updated via 42808da661163387f678ddb99819f27c5b11b95c (commit) from ad916bc823652e2d361f12ec5b35611d821d57e4 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 42808da661163387f678ddb99819f27c5b11b95c Author: Andress Barajas <and...@gm...> Date: Mon Jun 5 19:02:31 2023 -0700 #3 Changed logging and fixed spacing (#4) ----------------------------------------------------------------------- Summary of changes: host-src/tool/Makefile | 16 ++++++++-------- host-src/tool/dc-tool.c | 43 ++++++++++++++++++++++--------------------- host-src/tool/syscalls.c | 4 +++- host-src/tool/utils.c | 19 +++++++++++++++++++ host-src/tool/utils.h | 6 ++++++ make-cd/Makefile | 3 +++ target-src/1st_read/Makefile | 10 +++++++--- 7 files changed, 68 insertions(+), 33 deletions(-) create mode 100644 host-src/tool/utils.c create mode 100644 host-src/tool/utils.h diff --git a/host-src/tool/Makefile b/host-src/tool/Makefile index a5e24b4..418d4c7 100644 --- a/host-src/tool/Makefile +++ b/host-src/tool/Makefile @@ -6,26 +6,26 @@ LDFLAGS = $(HOSTLDFLAGS) INCLUDE = ifeq ($(WITH_BFD),1) - CFLAGS += -DWITH_BFD - LDFLAGS = -L$(BFDLIB) -lbfd -liberty -lintl -lz - INCLUDE += -I$(BFDINCLUDE) + CFLAGS += -DWITH_BFD + LDFLAGS = -L$(BFDLIB) -lbfd -liberty -lintl -lz + INCLUDE += -I$(BFDINCLUDE) else - LDFLAGS = -L$(ELFLIB) -lelf - INCLUDE += -I$(ELFINCLUDE) + LDFLAGS = -L$(ELFLIB) -lelf + INCLUDE += -I$(ELFINCLUDE) endif # Additional libraries for MinGW/MSYS ifdef MINGW32 - LDFLAGS += -lws2_32 -lwsock32 -liconv + LDFLAGS += -lws2_32 -lwsock32 -liconv endif ifdef STANDALONE_BINARY - LDFLAGS += -static + LDFLAGS += -static endif DCTOOL = dc-tool-ip$(EXECUTABLEEXTENSION) -OBJECTS = dc-tool.o syscalls.o unlink.o +OBJECTS = dc-tool.o syscalls.o unlink.o utils.o .c.o: $(CC) $(CFLAGS) $(INCLUDE) -o $@ -c $< diff --git a/host-src/tool/dc-tool.c b/host-src/tool/dc-tool.c index 9f5c38c..198ab6d 100644 --- a/host-src/tool/dc-tool.c +++ b/host-src/tool/dc-tool.c @@ -52,6 +52,8 @@ #include "dc-io.h" #include "commands.h" +#include "utils.h" + int _nl_msg_cat_cntr; #define DEBUG(x, ...) fprintf(stderr, "DEBUG: "); fprintf(stderr, x, __VA_ARGS__) @@ -450,8 +452,8 @@ int start_ws() WSADATA wsaData; int failed = 0; failed = WSAStartup(MAKEWORD(2,2), &wsaData); - if ( failed != NO_ERROR ) { - perror("WSAStartup"); + if (failed != NO_ERROR) { + log_error("WSAStartup"); return 1; } @@ -471,7 +473,7 @@ int open_socket(char *hostname) #else if (dcsocket == INVALID_SOCKET) { #endif - perror("socket"); + log_error("socket"); return -1; } @@ -482,14 +484,14 @@ int open_socket(char *hostname) host = gethostbyname(hostname); if (!host) { - perror("gethostbyname"); + log_error("gethostbyname"); return -1; } memcpy((char *)&sin.sin_addr, host->h_addr, host->h_length); if (connect(dcsocket, (struct sockaddr *)&sin, sizeof(sin)) < 0) { - perror("connect"); + log_error("connect"); return -1; } @@ -498,7 +500,7 @@ int open_socket(char *hostname) int failed = 0; failed = ioctlsocket(dcsocket, FIONBIO, &flags); if (failed == SOCKET_ERROR) { - perror("ioctlsocket"); + log_error("ioctlsocket"); return -1; } #else @@ -621,7 +623,7 @@ unsigned int upload(char *filename, unsigned int address) } if((inputfd = open(filename, O_RDONLY | O_BINARY)) < 0) { - perror(filename); + log_error(filename); return -1; } @@ -690,7 +692,7 @@ unsigned int upload(char *filename, unsigned int address) inputfd = open(filename, O_RDONLY | O_BINARY); if (inputfd < 0) { - perror(filename); + log_error(filename); return -1; } @@ -732,7 +734,7 @@ int download(char *filename, unsigned int address, outputfd = open(filename, O_WRONLY | O_CREAT | O_TRUNC | O_BINARY, 0644); if (outputfd < 0) { - perror(filename); + log_error(filename); return -1; } @@ -783,13 +785,12 @@ int do_console(char *path, char *isofile) if (isofile) { isofd = open(isofile, O_RDONLY | O_BINARY); if (isofd < 0) - perror(isofile); + log_error(isofile); } #ifndef __MINGW32__ - if (path) - if (chroot(path)) - perror(path); + if (path && chroot(path)) + log_error(path); #endif while (1) { @@ -865,7 +866,7 @@ int open_gdb_socket(int port) #else if (gdb_server_socket < 0) { #endif - perror( "error creating gdb server socket" ); + log_error( "error creating gdb server socket" ); return -1; } @@ -875,7 +876,7 @@ int open_gdb_socket(int port) #else if (checkbind < 0) { #endif - perror( "error binding gdb server socket" ); + log_error( "error binding gdb server socket" ); return -1; } @@ -885,7 +886,7 @@ int open_gdb_socket(int port) #else if (checklisten < 0) { #endif - perror( "error listening to gdb server socket" ); + log_error( "error listening to gdb server socket" ); return -1; } @@ -1015,21 +1016,21 @@ int main(int argc, char *argv[]) } if (quiet) - printf("Quiet download\n"); + printf("Quiet download\n"); if (cdfs_redir & (!console)) - console = 1; + console = 1; if (console & (command=='x')) - printf("Console enabled\n"); + printf("Console enabled\n"); #ifndef __MINGW32__ if (path) - printf("Chroot enabled\n"); + printf("Chroot enabled\n"); #endif if (cdfs_redir & (command=='x')) - printf("Cdfs redirection enabled\n"); + printf("Cdfs redirection enabled\n"); if (open_socket(hostname)<0) { diff --git a/host-src/tool/syscalls.c b/host-src/tool/syscalls.c index a848e0d..9eac90e 100644 --- a/host-src/tool/syscalls.c +++ b/host-src/tool/syscalls.c @@ -41,6 +41,8 @@ #include "dcload-types.h" #include "commands.h" +#include "utils.h" + #ifndef O_BINARY #define O_BINARY 0 #endif @@ -493,7 +495,7 @@ int dc_gdbpacket(unsigned char * buffer) socket_fd = accept( gdb_server_socket, NULL, NULL ); if ( socket_fd == 0) { - perror("error accepting gdb server connection"); + log_error("error accepting gdb server connection"); return -1; } } diff --git a/host-src/tool/utils.c b/host-src/tool/utils.c new file mode 100644 index 0000000..99ff462 --- /dev/null +++ b/host-src/tool/utils.c @@ -0,0 +1,19 @@ +#include <stdio.h> +#ifdef __MINGW32__ +#include <windows.h> +#endif + +void log_error( const char * prefix ) { + perror( prefix ); + +#ifdef __MINGW32__ + DWORD dwError = WSAGetLastError(); + if ( dwError ) { + TCHAR *err = NULL; + FormatMessageA(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM | FORMAT_MESSAGE_IGNORE_INSERTS | FORMAT_MESSAGE_MAX_WIDTH_MASK, + NULL, dwError, MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), (LPTSTR)&err, 0, NULL); + fprintf(stderr, "WSAGetLastError: %d / %s\n", dwError, err); + LocalFree(err); + } +#endif +} diff --git a/host-src/tool/utils.h b/host-src/tool/utils.h new file mode 100644 index 0000000..554bb87 --- /dev/null +++ b/host-src/tool/utils.h @@ -0,0 +1,6 @@ +#ifndef __UTILS_H__ +#define __UTILS_H__ + +void log_error( const char * prefix ); + +#endif /* __UTILS_H__ */ diff --git a/make-cd/Makefile b/make-cd/Makefile index 87a2dbd..e6bc9f8 100644 --- a/make-cd/Makefile +++ b/make-cd/Makefile @@ -9,6 +9,9 @@ TOUCH = touch all: $(1ST_READ) audio.raw burn-audio data.raw burn-data +$(1ST_READ): + cd ../target-src && make + audio.raw: $(DD) if=/dev/zero of=audio.raw bs=2352 count=300 diff --git a/target-src/1st_read/Makefile b/target-src/1st_read/Makefile index df173f1..3938051 100644 --- a/target-src/1st_read/Makefile +++ b/target-src/1st_read/Makefile @@ -6,7 +6,7 @@ all: rm-elf $(TARGET) .PHONY : clean clean: - -rm -f $(TARGET) 1st_read.bin loader.elf + -rm -f $(TARGET) loader.bin loader.elf .PHONY : distclean distclean: clean @@ -19,5 +19,9 @@ loader.elf: loader.s disable.s ../dcload/dcload.bin ../dcload/exception.bin $(TARGETCC) $(TARGETCFLAGS) -o $@ loader.s disable.s -nostartfiles \ -nostdlib -Ttext=0x8c010000 -Wa,-I../dcload -1st_read.bin: loader.elf - $(TARGETOBJCOPY) -R .stack -O binary $^ $@ +loader.bin: loader.elf + $(TARGETOBJCOPY) -O binary $^ $@ + +# 1st_read.bin +$(TARGET): loader.bin + $(KOS_BASE)/utils/scramble/scramble $< $@ hooks/post-receive -- An ethernet program loader for the Dreamcast. |
From: ljsebald <ljs...@us...> - 2023-06-06 01:56:05
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "An ethernet program loader for the Dreamcast.". The branch, master has been updated via ad916bc823652e2d361f12ec5b35611d821d57e4 (commit) from d1a1441eb7f08b3a3ae30eb50fc121585c6fcfc5 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit ad916bc823652e2d361f12ec5b35611d821d57e4 Author: Andress Barajas <and...@gm...> Date: Mon Jun 5 18:55:29 2023 -0700 #2 Fix options parser and gdb (#3) ----------------------------------------------------------------------- Summary of changes: host-src/tool/dc-tool.c | 811 ++++++++++++++++++++++--------------------- host-src/tool/syscalls.c | 142 ++++---- make-cd/Makefile | 6 +- target-src/1st_read/Makefile | 2 +- 4 files changed, 496 insertions(+), 465 deletions(-) diff --git a/host-src/tool/dc-tool.c b/host-src/tool/dc-tool.c index 505506e..9f5c38c 100644 --- a/host-src/tool/dc-tool.c +++ b/host-src/tool/dc-tool.c @@ -19,7 +19,7 @@ * */ -#include "config.h" +#include "config.h" // needed for newer BFD library #ifdef WITH_BFD #include <bfd.h> @@ -127,90 +127,123 @@ char *__progname=PACKAGE; */ int getopt(int nargc, char * const *nargv, const char *ostr) { - extern char *__progname; - static char *place = EMSG; /* option letter processing */ - char *oli; /* option letter list index */ - int ret; - - if (optreset || !*place) { /* update scanning pointer */ - optreset = 0; - if (optind >= nargc || *(place = nargv[optind]) != '-') { - place = EMSG; - return (-1); - } - if (place[1] && *++place == '-') { /* found "--" */ - ++optind; - place = EMSG; - return (-1); - } - } /* option letter okay? */ - if ((optopt = (int)*place++) == (int)':' || - !(oli = strchr(ostr, optopt))) { - /* - * if the user didn't specify '-' as an option, - * assume it means -1. - */ - if (optopt == (int)'-') - return (-1); - if (!*place) - ++optind; - if (opterr && *ostr != ':') - (void)fprintf(stderr, - "%s: illegal option -- %c\n", __progname, optopt); - return (BADCH); - } - if (*++oli != ':') { /* don't need argument */ - optarg = NULL; - if (!*place) - ++optind; + extern char *__progname; + static char *place = EMSG; /* option letter processing */ + char *oli; /* option letter list index */ + int ret; + + if (optreset || !*place) { /* update scanning pointer */ + optreset = 0; + if (optind >= nargc || *(place = nargv[optind]) != '-') { + place = EMSG; + return (-1); } - else { /* need an argument */ - if (*place) /* no white space */ - optarg = place; - else if (nargc <= ++optind) { /* no arg */ - place = EMSG; - if (*ostr == ':') - ret = BADARG; - else - ret = BADCH; - if (opterr) - (void)fprintf(stderr, - "%s: option requires an argument -- %c\n", - __progname, optopt); - return (ret); - } - else /* white space */ - optarg = nargv[optind]; - place = EMSG; + if (place[1] && *++place == '-') { /* found "--" */ + ++optind; + place = EMSG; + return (-1); + } + } /* option letter okay? */ + if ((optopt = (int)*place++) == (int)':' || + !(oli = strchr(ostr, optopt))) { + /* + * if the user didn't specify '-' as an option, + * assume it means -1. + */ + if (optopt == (int)'-') + return (-1); + if (!*place) + ++optind; + if (opterr && *ostr != ':') + (void)fprintf(stderr, + "%s: illegal option -- %c\n", __progname, optopt); + + return (BADCH); + } + if (*++oli != ':') { /* don't need argument */ + optarg = NULL; + if (!*place) ++optind; + } + else { /* need an argument */ + if (*place) /* no white space */ + optarg = place; + else if (nargc <= ++optind) { /* no arg */ + place = EMSG; + if (*ostr == ':') + ret = BADARG; + else + ret = BADCH; + if (opterr) + (void)fprintf(stderr, + "%s: option requires an argument -- %c\n", + __progname, optopt); + return (ret); } - return (optopt); /* dump back option letter */ + else /* white space */ + optarg = nargv[optind]; + place = EMSG; + ++optind; + } + + return (optopt); /* dump back option letter */ } #endif +int gdb_socket_started = 0; #ifndef __MINGW32__ int dcsocket = 0; +int socket_fd = 0; int gdb_server_socket = -1; #else #define bzero(b,len) (memset((b), '\0', (len)), (void) 0) +/* Winsock SOCKET is defined as an unsigned int, so -1 won't work here */ SOCKET dcsocket = 0; -SOCKET gdb_server_socket = -1; +SOCKET gdb_server_socket = 0; +SOCKET socket_fd = 0; #endif void cleanup(char **fnames) { - int counter = 0; + int counter; + + for(counter = 0; counter < 4; counter++) + { + if(fnames[counter] != 0) + free(fnames[counter]); + } - for(; counter < 4; counter++) - if(fnames[counter] != 0) - free(fnames[counter]); if(dcsocket) #ifndef __MINGW32__ - close(dcsocket); + close(dcsocket); #else - closesocket(dcsocket); - WSACleanup(); + closesocket(dcsocket); #endif + + // Handle GDB + if (gdb_socket_started) { + gdb_socket_started = 0; + + // Send SIGTERM to the GDB Client, telling remote DC program has ended + char gdb_buf[16]; + strcpy(gdb_buf, "+$X0f#ee\0"); + +#ifdef __MINGW32__ + send(socket_fd, gdb_buf, strlen(gdb_buf), 0); + sleep(1); + closesocket(socket_fd); + closesocket(gdb_server_socket); +#else + write(socket_fd, gdb_buf, strlen(gdb_buf)); + sleep(1); + close(socket_fd); + close(gdb_server_socket); +#endif + } + +#ifdef __MINGW32__ + WSACleanup(); +#endif } extern char *optarg; @@ -241,69 +274,70 @@ int recv_data(void *data, unsigned int dcaddr, unsigned int total, unsigned int memset(map, 0, (total+1023)/1024); if (!quiet) { - send_cmd(CMD_SENDBIN, dcaddr, total, NULL, 0); + send_cmd(CMD_SENDBIN, dcaddr, total, NULL, 0); } else { - send_cmd(CMD_SENDBINQ, dcaddr, total, NULL, 0); + send_cmd(CMD_SENDBINQ, dcaddr, total, NULL, 0); } start = time_in_usec(); while (((time_in_usec() - start) < PACKET_TIMEOUT)&&(packets < ((total+1023)/1024 + 1))) { - memset(buffer, 0, 2048); - - while(((retval = recv(dcsocket, (void *)buffer, 2048, 0)) == -1)&&((time_in_usec() - start) < PACKET_TIMEOUT)); - - if (retval > 0) { - start = time_in_usec(); - if (memcmp(((command_t *)buffer)->id, CMD_DONEBIN, 4)) { - if ( ((ntohl(((command_t *)buffer)->address) - dcaddr)/1024) >= ((total + 1024)/1024) ) { - printf("Obviously bad packet, avoiding segfault\n"); - fflush(stdout); - } - else { - map[ (ntohl(((command_t *)buffer)->address) - dcaddr)/1024 ] = 1; - i = data + (ntohl(((command_t *)buffer)->address) - dcaddr); - - memcpy(i, buffer + 12, ntohl(((command_t *)buffer)->size)); - } - } - packets++; - } + memset(buffer, 0, 2048); + + while(((retval = recv(dcsocket, (void *)buffer, 2048, 0)) == -1)&&((time_in_usec() - start) < PACKET_TIMEOUT)); + + if (retval > 0) { + start = time_in_usec(); + if (memcmp(((command_t *)buffer)->id, CMD_DONEBIN, 4)) { + if (((ntohl(((command_t *)buffer)->address) - dcaddr)/1024) >= ((total + 1024)/1024)) { + printf("Obviously bad packet, avoiding segfault\n"); + fflush(stdout); + } + else { + map[ (ntohl(((command_t *)buffer)->address) - dcaddr)/1024 ] = 1; + i = data + (ntohl(((command_t *)buffer)->address) - dcaddr); + + memcpy(i, buffer + 12, ntohl(((command_t *)buffer)->size)); + } + } + packets++; + } } - for(c = 0; c < (total+1023)/1024; c++) - if (!map[c]) { - if ( (total - c*1024) >= 1024) { - send_cmd(CMD_SENDBINQ, dcaddr + c*1024, 1024, NULL, 0); - } - else { - send_cmd(CMD_SENDBINQ, dcaddr + c*1024, total - c*1024, NULL, 0); - } + for(c = 0; c < (total+1023)/1024; c++) { + if (!map[c]) { + if ( (total - c*1024) >= 1024) { + send_cmd(CMD_SENDBINQ, dcaddr + c*1024, 1024, NULL, 0); + } + else { + send_cmd(CMD_SENDBINQ, dcaddr + c*1024, total - c*1024, NULL, 0); + } - start = time_in_usec(); - while(((retval = recv(dcsocket, (void *)buffer, 2048, 0)) == -1)&&((time_in_usec() - start) < PACKET_TIMEOUT)); + start = time_in_usec(); + while(((retval = recv(dcsocket, (void *)buffer, 2048, 0)) == -1)&&((time_in_usec() - start) < PACKET_TIMEOUT)); - if (retval > 0) { - start = time_in_usec(); + if (retval > 0) { + start = time_in_usec(); - if (memcmp(((command_t *)buffer)->id, CMD_DONEBIN, 4)) { - map[ (ntohl(((command_t *)buffer)->address) - dcaddr)/1024 ] = 1; - /* printf("recv_data: got chunk for %p, %d bytes\n", - (void *)ntohl(((command_t *)buffer)->address), ntohl(((command_t *)buffer)->size)); */ - i = data + (ntohl(((command_t *)buffer)->address) - dcaddr); + if (memcmp(((command_t *)buffer)->id, CMD_DONEBIN, 4)) { + map[ (ntohl(((command_t *)buffer)->address) - dcaddr)/1024 ] = 1; + /* printf("recv_data: got chunk for %p, %d bytes\n", + (void *)ntohl(((command_t *)buffer)->address), ntohl(((command_t *)buffer)->size)); */ + i = data + (ntohl(((command_t *)buffer)->address) - dcaddr); - memcpy(i, buffer + 12, ntohl(((command_t *)buffer)->size)); - } + memcpy(i, buffer + 12, ntohl(((command_t *)buffer)->size)); + } - // Get the DONEBIN - while(((retval = recv(dcsocket, (void *)buffer, 2048, 0)) == -1)&&((time_in_usec() - start) < PACKET_TIMEOUT)); - } + // Get the DONEBIN + while(((retval = recv(dcsocket, (void *)buffer, 2048, 0)) == -1)&&((time_in_usec() - start) < PACKET_TIMEOUT)); + } - // Force us to go back and recheck - // XXX This should be improved after recv_data can return errors. - c = -1; - } + // Force us to go back and recheck + // XXX This should be improved after recv_data can return errors. + c = -1; + } + } free(map); @@ -320,38 +354,36 @@ int send_data(unsigned char * addr, unsigned int dcaddr, unsigned int size) int count = 0; if (!size) - return -1; + return -1; - do - { - send_cmd(CMD_LOADBIN, dcaddr, size, NULL, 0); - } - while(recv_response(buffer, PACKET_TIMEOUT) == -1); + do { + send_cmd(CMD_LOADBIN, dcaddr, size, NULL, 0); + } while(recv_response(buffer, PACKET_TIMEOUT) == -1); while(memcmp(((command_t *)buffer)->id, CMD_LOADBIN, 4)) { - printf("send_data: error in response to CMD_LOADBIN, retrying... %c%c%c%c\n",buffer[0],buffer[1],buffer[2],buffer[3]); - do - send_cmd(CMD_LOADBIN, dcaddr, size, NULL, 0); - while (recv_response(buffer, PACKET_TIMEOUT) == -1); + printf("send_data: error in response to CMD_LOADBIN, retrying... %c%c%c%c\n",buffer[0],buffer[1],buffer[2],buffer[3]); + do { + send_cmd(CMD_LOADBIN, dcaddr, size, NULL, 0); + } while (recv_response(buffer, PACKET_TIMEOUT) == -1); } for(i = addr; i < addr + size; i += 1024) { - if ((addr + size - i) >= 1024) { - send_cmd(CMD_PARTBIN, dcaddr, 1024, i, 1024); - } - else { - send_cmd(CMD_PARTBIN, dcaddr, (addr + size) - i, i, (addr + size) - i); - } - dcaddr += 1024; - - /* give the DC a chance to empty its rx fifo - * this increases transfer rate on 100mbit by about 3.4x - */ - count++; - if (count == 15) { - start = time_in_usec(); - while ((time_in_usec() - start) < PACKET_TIMEOUT/51); - count = 0; + if ((addr + size - i) >= 1024) { + send_cmd(CMD_PARTBIN, dcaddr, 1024, i, 1024); + } + else { + send_cmd(CMD_PARTBIN, dcaddr, (addr + size) - i, i, (addr + size) - i); + } + dcaddr += 1024; + + /* give the DC a chance to empty its rx fifo + * this increases transfer rate on 100mbit by about 3.4x + */ + count++; + if (count == 15) { + start = time_in_usec(); + while ((time_in_usec() - start) < PACKET_TIMEOUT/51); + count = 0; } } @@ -359,33 +391,33 @@ int send_data(unsigned char * addr, unsigned int dcaddr, unsigned int size) /* delay a bit to try to make sure all data goes out before CMD_DONEBIN */ while ((time_in_usec() - start) < PACKET_TIMEOUT/10); - do - send_cmd(CMD_DONEBIN, 0, 0, NULL, 0); - while (recv_response(buffer, PACKET_TIMEOUT) == -1); + do { + send_cmd(CMD_DONEBIN, 0, 0, NULL, 0); + } while (recv_response(buffer, PACKET_TIMEOUT) == -1); while(memcmp(((command_t *)buffer)->id, CMD_DONEBIN, 4)) { - printf("send_data: error in response to CMD_DONEBIN, retrying...\n"); + printf("send_data: error in response to CMD_DONEBIN, retrying...\n"); - do - send_cmd(CMD_LOADBIN, dcaddr, size, NULL, 0); - while (recv_response(buffer, PACKET_TIMEOUT) == -1); + do { + send_cmd(CMD_LOADBIN, dcaddr, size, NULL, 0); + } while (recv_response(buffer, PACKET_TIMEOUT) == -1); } while ( ntohl(((command_t *)buffer)->size) != 0) { -/* printf("%d bytes at 0x%x were missing, resending\n", ntohl(((command_t *)buffer)->size),ntohl(((command_t *)buffer)->address)); */ - send_cmd(CMD_PARTBIN, ntohl(((command_t *)buffer)->address), ntohl(((command_t *)buffer)->size), addr + (ntohl(((command_t *)buffer)->address) - a), ntohl(((command_t *)buffer)->size)); + /* printf("%d bytes at 0x%x were missing, resending\n", ntohl(((command_t *)buffer)->size),ntohl(((command_t *)buffer)->address)); */ + send_cmd(CMD_PARTBIN, ntohl(((command_t *)buffer)->address), ntohl(((command_t *)buffer)->size), addr + (ntohl(((command_t *)buffer)->address) - a), ntohl(((command_t *)buffer)->size)); - do - send_cmd(CMD_DONEBIN, 0, 0, NULL, 0); - while (recv_response(buffer, PACKET_TIMEOUT) == -1); + do { + send_cmd(CMD_DONEBIN, 0, 0, NULL, 0); + } while (recv_response(buffer, PACKET_TIMEOUT) == -1); - while(memcmp(((command_t *)buffer)->id, CMD_DONEBIN, 4)) { - printf("send_data: error in response to CMD_DONEBIN, retrying...\n"); + while(memcmp(((command_t *)buffer)->id, CMD_DONEBIN, 4)) { + printf("send_data: error in response to CMD_DONEBIN, retrying...\n"); - do - send_cmd(CMD_LOADBIN, dcaddr, size, NULL, 0); - while (recv_response(buffer, PACKET_TIMEOUT) == -1); - } + do { + send_cmd(CMD_LOADBIN, dcaddr, size, NULL, 0); + } while (recv_response(buffer, PACKET_TIMEOUT) == -1); + } } return 0; @@ -393,7 +425,7 @@ int send_data(unsigned char * addr, unsigned int dcaddr, unsigned int size) void usage(void) { - printf("\n%s %s by <an...@na...>\n\n", PACKAGE, VERSION); + printf("\n%s %s by <an...@na...>\n\n",PACKAGE,VERSION); printf("-x <filename> Upload and execute <filename>\n"); printf("-u <filename> Upload <filename>\n"); printf("-d <filename> Download to <filename>\n"); @@ -419,8 +451,8 @@ int start_ws() int failed = 0; failed = WSAStartup(MAKEWORD(2,2), &wsaData); if ( failed != NO_ERROR ) { - perror("WSAStartup"); - return 1; + perror("WSAStartup"); + return 1; } return 0; @@ -439,8 +471,8 @@ int open_socket(char *hostname) #else if (dcsocket == INVALID_SOCKET) { #endif - perror("socket"); - return -1; + perror("socket"); + return -1; } bzero(&sin, sizeof(sin)); @@ -450,24 +482,24 @@ int open_socket(char *hostname) host = gethostbyname(hostname); if (!host) { - perror("gethostbyname"); - return -1; + perror("gethostbyname"); + return -1; } memcpy((char *)&sin.sin_addr, host->h_addr, host->h_length); if (connect(dcsocket, (struct sockaddr *)&sin, sizeof(sin)) < 0) { - perror("connect"); - return -1; + perror("connect"); + return -1; } #ifdef __MINGW32__ unsigned long flags = 1; int failed = 0; failed = ioctlsocket(dcsocket, FIONBIO, &flags); - if ( failed == SOCKET_ERROR ) { - perror("ioctlsocket"); - return -1; + if (failed == SOCKET_ERROR) { + perror("ioctlsocket"); + return -1; } #else fcntl(dcsocket, F_SETFL, O_NONBLOCK); @@ -481,8 +513,8 @@ int recv_response(unsigned char *buffer, int timeout) int start = time_in_usec(); int rv = -1; - while( ((time_in_usec() - start) < timeout) && (rv == -1)) - rv = recv(dcsocket, (void *)buffer, 2048, 0); + while(((time_in_usec() - start) < timeout) && (rv == -1)) + rv = recv(dcsocket, (void *)buffer, 2048, 0); ...<truncated>... hooks/post-receive -- An ethernet program loader for the Dreamcast. |
From: ljsebald <ljs...@us...> - 2023-06-05 21:56:58
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "A pseudo Operating System for the Dreamcast.". The branch, master has been updated via 7d888dc3c4aedc0ce62289d15ebe95f5e69d87ed (commit) via 0ce9d8e12e1daefd4d7380854882403d616305fa (commit) via 4d5f3ead01edea3a22754efebac1d3a5b854a89c (commit) via 9470dd378b16477bac867940109726fa73c4731e (commit) via 842b63cfec85d7fa1c32129f5cd77e1e0138716a (commit) via 05366ccf1e92c53d6f0e7ddd0088a0149b8c0c42 (commit) via 2e7c4a72aa412dd9420fa32845437429cda38005 (commit) from 1cc2d2c6c871f55b4265169979236e0e4ab369bb (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 7d888dc3c4aedc0ce62289d15ebe95f5e69d87ed Merge: 1cc2d2c 0ce9d8e Author: Lawrence Sebald <ljs...@us...> Date: Mon Jun 5 17:56:28 2023 -0400 Merge pull request #240 from KallistiOS/split-patch Split GCC patching behavior into diff file and copying files from tree commit 0ce9d8e12e1daefd4d7380854882403d616305fa Author: darc <da...@pr...> Date: Mon Jun 5 11:38:30 2023 -0500 Fix patch.mk to add fetch dependency to sh4-fixup, fixing parallel building commit 4d5f3ead01edea3a22754efebac1d3a5b854a89c Author: darc <da...@pr...> Date: Mon Jun 5 10:45:41 2023 -0500 Move fake-kos/gthr-kos to patches/gcc dir commit 9470dd378b16477bac867940109726fa73c4731e Author: darc <da...@pr...> Date: Sun Jun 4 20:56:54 2023 -0500 Regenerate GCC patch files with proper formatting commit 842b63cfec85d7fa1c32129f5cd77e1e0138716a Author: darc <da...@pr...> Date: Sun Jun 4 18:56:24 2023 -0500 Fix file copy operation before patch to only run for SH4, not ARM commit 05366ccf1e92c53d6f0e7ddd0088a0149b8c0c42 Author: darc <da...@pr...> Date: Sun Jun 4 11:40:54 2023 -0500 Add notices to fake-kos, gthr-kos, and startup explaining they're part of toolchain commit 2e7c4a72aa412dd9420fa32845437429cda38005 Author: darc <da...@pr...> Date: Sun Jun 4 11:31:31 2023 -0500 Remove fake-kos, gthr-kos, and crt1 from GCC patches and copy them over from file tree instead ----------------------------------------------------------------------- Summary of changes: kernel/arch/dreamcast/kernel/startup.s | 4 + utils/dc-chain/patches/gcc-13.1.0-kos.diff | 1481 +------------------- utils/dc-chain/patches/gcc-4.7.4-kos.diff | 2078 +--------------------------- utils/dc-chain/patches/gcc-9.3.0-kos.diff | 1475 +------------------- utils/dc-chain/patches/gcc/fake-kos.S | 82 ++ utils/dc-chain/patches/gcc/gthr-kos.h | 404 ++++++ utils/dc-chain/scripts/patch.mk | 8 + 7 files changed, 567 insertions(+), 4965 deletions(-) create mode 100644 utils/dc-chain/patches/gcc/fake-kos.S create mode 100644 utils/dc-chain/patches/gcc/gthr-kos.h diff --git a/kernel/arch/dreamcast/kernel/startup.s b/kernel/arch/dreamcast/kernel/startup.s index 5b1510d..bff92c5 100644 --- a/kernel/arch/dreamcast/kernel/startup.s +++ b/kernel/arch/dreamcast/kernel/startup.s @@ -3,6 +3,10 @@ ! startup.s ! (c)2000-2001 Megan Potter ! +! This file is added to GCC during the patching stage of toolchain +! compilation. Any changes to this file will not take effect until the +! toolchain is recompiled. +! ! This file must appear FIRST in your linking order, or your program won't ! work correctly as a raw binary. ! diff --git a/utils/dc-chain/patches/gcc-13.1.0-kos.diff b/utils/dc-chain/patches/gcc-13.1.0-kos.diff index 16667ef..0b7f0ab 100644 --- a/utils/dc-chain/patches/gcc-13.1.0-kos.diff +++ b/utils/dc-chain/patches/gcc-13.1.0-kos.diff @@ -1,6 +1,6 @@ -diff -ruN gcc-13.1.0/gcc/config/sh/sh-c.cc gcc-13.1.0-kos/gcc/config/sh/sh-c.cc ---- gcc-13.1.0/gcc/config/sh/sh-c.cc 2023-05-18 23:44:39.681991134 -0500 -+++ gcc-13.1.0-kos/gcc/config/sh/sh-c.cc 2023-05-18 23:45:23.294601687 -0500 +diff --color -ruN gcc-13.1.0/gcc/config/sh/sh-c.cc gcc-13.1.0-kos/gcc/config/sh/sh-c.cc +--- gcc-13.1.0/gcc/config/sh/sh-c.cc 2023-06-04 20:48:46.612552162 -0500 ++++ gcc-13.1.0-kos/gcc/config/sh/sh-c.cc 2023-06-04 20:49:03.486606055 -0500 @@ -141,4 +141,11 @@ cpp_define_formatted (pfile, "__SH_ATOMIC_MODEL_%s__", @@ -13,9 +13,9 @@ diff -ruN gcc-13.1.0/gcc/config/sh/sh-c.cc gcc-13.1.0-kos/gcc/config/sh/sh-c.cc + /* Toolchain supports setting up stack for 32MB */ + builtin_define ("__KOS_GCC_32MB__"); } -diff -ruN gcc-13.1.0/gcc/configure gcc-13.1.0-kos/gcc/configure ---- gcc-13.1.0/gcc/configure 2023-05-18 23:44:40.590003868 -0500 -+++ gcc-13.1.0-kos/gcc/configure 2023-05-18 23:45:23.298601742 -0500 +diff --color -ruN gcc-13.1.0/gcc/configure gcc-13.1.0-kos/gcc/configure +--- gcc-13.1.0/gcc/configure 2023-06-04 20:48:49.679561957 -0500 ++++ gcc-13.1.0-kos/gcc/configure 2023-06-04 20:49:03.488606061 -0500 @@ -13012,7 +13012,7 @@ target_thread_file='single' ;; @@ -25,1442 +25,9 @@ diff -ruN gcc-13.1.0/gcc/configure gcc-13.1.0-kos/gcc/configure target_thread_file=${enable_threads} ;; *) -diff -ruN gcc-13.1.0/libgcc/config/sh/crt1.S gcc-13.1.0-kos/libgcc/config/sh/crt1.S ---- gcc-13.1.0/libgcc/config/sh/crt1.S 2023-05-18 23:44:39.377986871 -0500 -+++ gcc-13.1.0-kos/libgcc/config/sh/crt1.S 2023-05-18 23:45:23.298601742 -0500 -@@ -1,724 +1,236 @@ --/* Copyright (C) 2000-2023 Free Software Foundation, Inc. -- This file was pretty much copied from newlib. -+! KallistiOS ##version## -+! -+! startup.s -+! (c)2000-2001 Megan Potter -+! -+! This file must appear FIRST in your linking order, or your program won't -+! work correctly as a raw binary. -+! -+! This is very loosely based on Marcus' crt0.s/startup.s -+! -+ -+.globl start -+.globl _start -+.globl _arch_real_exit -+.globl __arch_old_sr -+.globl __arch_old_vbr -+.globl __arch_old_stack -+.globl __arch_old_fpscr -+.globl __arch_mem_top - --This file is part of GCC. -+.weak _arch_stack_16m -+.weak _arch_stack_32m - --GCC is free software; you can redistribute it and/or modify it --under the terms of the GNU General Public License as published by the --Free Software Foundation; either version 3, or (at your option) any --later version. -- --GCC is distributed in the hope that it will be useful, --but WITHOUT ANY WARRANTY; without even the implied warranty of --MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU --General Public License for more details. -- --Under Section 7 of GPL version 3, you are granted additional --permissions described in the GCC Runtime Library Exception, version --3.1, as published by the Free Software Foundation. -- --You should have received a copy of the GNU General Public License and --a copy of the GCC Runtime Library Exception along with this program; --see the files COPYING3 and COPYING.RUNTIME respectively. If not, see --<http://www.gnu.org/licenses/>. */ -- --#include "crt.h" -- --#ifdef MMU_SUPPORT -- /* Section used for exception/timer interrupt stack area */ -- .section .data.vbr.stack,"aw" -- .align 4 -- .global __ST_VBR --__ST_VBR: -- .zero 1024 * 2 /* ; 2k for VBR handlers */ --/* Label at the highest stack address where the stack grows from */ --__timer_stack: --#endif /* MMU_SUPPORT */ -- -- /* ;---------------------------------------- -- Normal newlib crt1.S */ -- -- ! make a place to keep any previous value of the vbr register -- ! this will only have a value if it has been set by redboot (for example) -- .section .bss --old_vbr: -- .long 0 --#ifdef PROFILE --profiling_enabled: -- .long 0 --#endif -- -- -- .section .text -- .global start -- .import ___rtos_profiler_start_timer -- .weak ___rtos_profiler_start_timer -+_start: - start: -- mov.l stack_k,r15 -- --#if defined (__SH3__) || (defined (__SH_FPU_ANY__) && ! defined (__SH2E__) && ! defined (__SH2A__)) || defined (__SH4_NOFPU__) --#define VBR_SETUP -- ! before zeroing the bss ... -- ! if the vbr is already set to vbr_start then the program has been restarted -- ! (i.e. it is not the first time the program has been run since reset) -- ! reset the vbr to its old value before old_vbr (in bss) is wiped -- ! this ensures that the later code does not create a circular vbr chain -- stc vbr, r1 -- mov.l vbr_start_k, r2 -- cmp/eq r1, r2 -- bf 0f -- ! reset the old vbr value -- mov.l old_vbr_k, r1 -- mov.l @r1, r2 -- ldc r2, vbr --0: --#endif /* VBR_SETUP */ -- -- ! zero out bss -- mov.l edata_k,r0 -- mov.l end_k,r1 -- mov #0,r2 --start_l: -- mov.l r2,@r0 -- add #4,r0 -- cmp/ge r0,r1 -- bt start_l -- --#if defined (__SH_FPU_ANY__) -- mov.l set_fpscr_k, r1 -- mov #4,r4 -- jsr @r1 -- shll16 r4 ! Set DN bit (flush denormal inputs to zero) -- lds r3,fpscr ! Switch to default precision --#endif /* defined (__SH_FPU_ANY__) */ -- --#ifdef VBR_SETUP -- ! save the existing contents of the vbr -- ! there will only be a prior value when using something like redboot -- ! otherwise it will be zero -- stc vbr, r1 -- mov.l old_vbr_k, r2 -- mov.l r1, @r2 -- ! setup vbr -- mov.l vbr_start_k, r1 -- ldc r1,vbr --#endif /* VBR_SETUP */ -- -- ! if an rtos is exporting a timer start fn, -- ! then pick up an SR which does not enable ints -- ! (the rtos will take care of this) -- mov.l rtos_start_fn, r0 -- mov.l sr_initial_bare, r1 -- tst r0, r0 -- bt set_sr -- -- mov.l sr_initial_rtos, r1 -- --set_sr: -- ! Set status register (sr) -- ldc r1, sr -- -- ! arrange for exit to call fini -- mov.l atexit_k,r0 -- mov.l fini_k,r4 -- jsr @r0 -+ ! Disable interrupts (if they're enabled) -+ mov.l old_sr_addr,r0 -+ stc sr,r1 -+ mov.l r1,@r0 -+ mov.l init_sr,r0 -+ ldc r0,sr -+ -+ ! Run in the P2 area -+ mov.l setup_cache_addr,r0 -+ mov.l p2_mask,r1 -+ or r1,r0 -+ jmp @r0 - nop - --#ifdef PROFILE -- ! arrange for exit to call _mcleanup (via stop_profiling) -- mova stop_profiling,r0 -- mov.l atexit_k,r1 -- jsr @r1 -- mov r0, r4 -- -- ! Call profiler startup code -- mov.l monstartup_k, r0 -- mov.l start_k, r4 -- mov.l etext_k, r5 -- jsr @r0 -+setup_cache: -+ ! Now that we are in P2, it's safe to enable the cache -+ ! Check to see if we should enable OCRAM. -+ mov.l kos_init_flags_addr, r0 -+ add #2, r0 -+ mov.w @r0, r0 -+ tst #1, r0 -+ bf .L_setup_cache_L0 -+ mov.w ccr_data,r1 -+ bra .L_setup_cache_L1 -+ nop -+.L_setup_cache_L0: -+ mov.w ccr_data_ocram,r1 -+.L_setup_cache_L1: -+ mov.l ccr_addr,r0 -+ mov.l r1,@r0 -+ -+ ! After changing CCR, eight instructions must be executed before -+ ! it's safe to enter a cached area such as P1 -+ nop ! 1 -+ nop ! 2 -+ nop ! 3 -+ nop ! 4 -+ nop ! 5 (d-cache now safe) -+ nop ! 6 -+ mov.l init_addr,r0 ! 7 -+ mov #0,r1 ! 8 -+ jmp @r0 ! go -+ mov r1,r0 - nop - -- ! enable profiling trap -- ! until now any trap 33s will have been ignored -- ! This means that all library functions called before this point -- ! (directly or indirectly) may have the profiling trap at the start. -- ! Therefore, only mcount itself may not have the extra header. -- mov.l profiling_enabled_k2, r0 -- mov #1, r1 -- mov.l r1, @r0 --#endif /* PROFILE */ -+init: -+ ! Save old PR on old stack so we can get to it later -+ sts.l pr,@-r15 - -- ! call init -- mov.l init_k,r0 -+ ! Save the current stack, and set a new stack (higher up in RAM) -+ mov.l old_stack_addr,r0 -+ mov.l r15,@r0 -+ mov.l new_stack_16m,r15 -+ mov.l @r15,r15 -+ -+ ! Check if 0xadffffff is a mirror of 0xacffffff, or if unique -+ ! If unique, then memory is 32MB instead of 16MB, and we must -+ ! set up new stack even higher -+ mov.l p2_mask,r0 -+ mov r0,r2 -+ or r15,r2 -+ mov #0xba,r1 -+ mov.b r1,@-r2 ! Store 0xba to 0xacffffff -+ mov.l new_stack_32m,r1 -+ mov.l @r1,r1 -+ or r0,r1 -+ mov #0xab,r0 -+ mov.b r0,@-r1 ! Store 0xab in 0xadffffff -+ mov.b @r1,r0 -+ mov.b @r2,r1 ! Reloaded values -+ cmp/eq r0,r1 ! Check if values match -+ bt memchk_done ! If so, mirror - we're done, move on -+ mov.l new_stack_32m,r15 ! If not, unique - set higher stack -+ mov.l @r15,r15 -+memchk_done: -+ mov.l mem_top_addr,r0 -+ mov.l r15,@r0 ! Save address of top of memory -+ -+ ! Save VBR -+ mov.l old_vbr_addr,r0 -+ stc vbr,r1 -+ mov.l r1,@r0 -+ -+ ! Save FPSCR -+ mov.l old_fpscr_addr,r0 -+ sts fpscr,r1 -+ mov.l r1,@r0 -+ -+ ! Reset FPSCR -+ mov #4,r4 ! Use 00040000 (DN=1) -+ mov.l fpscr_addr,r0 - jsr @r0 -- nop -+ shll16 r4 - -- ! call the mainline -- mov.l main_k,r0 -- jsr @r0 -- nop -+ ! Setup a sentinel value for frame pointer in case we're using -+ ! FRAME_POINTERS for stack tracing. -+ mov #-1,r14 - -- ! call exit -- mov r0,r4 -- mov.l exit_k,r0 -+ ! Jump to the kernel main -+ mov.l main_addr,r0 - jsr @r0 - nop -- -- .balign 4 --#ifdef PROFILE --stop_profiling: -- # stop mcount counting -- mov.l profiling_enabled_k2, r0 -- mov #0, r1 -- mov.l r1, @r0 - -- # call mcleanup -- mov.l mcleanup_k, r0 -- jmp @r0 -- nop -- -- .balign 4 --mcleanup_k: -- .long __mcleanup --monstartup_k: -- .long ___monstartup --profiling_enabled_k2: -- .long profiling_enabled --start_k: -- .long _start --etext_k: -- .long __etext --#endif /* PROFILE */ -- -- .align 2 --#if defined (__SH_FPU_ANY__) --set_fpscr_k: -- .long ___set_fpscr --#endif /* defined (__SH_FPU_ANY__) */ -- --stack_k: -- .long _stack --edata_k: -- .long _edata --end_k: -- .long _end --main_k: -- .long ___setup_argv_and_call_main --exit_k: -- .long _exit --atexit_k: -- .long _atexit --init_k: -- .long GLOBAL(_init) --fini_k: -- .long GLOBAL(_fini) --#ifdef VBR_SETUP --old_vbr_k: -- .long old_vbr --vbr_start_k: -- .long vbr_start --#endif /* VBR_SETUP */ -- --sr_initial_rtos: -- ! Privileged mode RB 1 BL 0. Keep BL 0 to allow default trap handlers to work. -- ! Whether profiling or not, keep interrupts masked, -- ! the RTOS will enable these if required. -- .long 0x600000f1 -- --rtos_start_fn: -- .long ___rtos_profiler_start_timer -- --#ifdef PROFILE --sr_initial_bare: -- ! Privileged mode RB 1 BL 0. Keep BL 0 to allow default trap handlers to work. -- ! For bare machine, we need to enable interrupts to get profiling working -- .long 0x60000001 --#else -- --sr_initial_bare: -- ! Privileged mode RB 1 BL 0. Keep BL 0 to allow default trap handlers to work. -- ! Keep interrupts disabled - the application will enable as required. -- .long 0x600000f1 --#endif -- -- ! supplied for backward compatibility only, in case of linking -- ! code whose main() was compiled with an older version of GCC. -- .global ___main --___main: -- rts -- nop --#ifdef VBR_SETUP --! Exception handlers -- .section .text.vbr, "ax" --vbr_start: -- -- .org 0x100 --vbr_100: --#ifdef PROFILE -- ! Note on register usage. -- ! we use r0..r3 as scratch in this code. If we are here due to a trapa for profiling -- ! then this is OK as we are just before executing any function code. -- ! The other r4..r7 we save explicityl on the stack -- ! Remaining registers are saved by normal ABI conventions and we assert we do not -- ! use floating point registers. -- mov.l expevt_k1, r1 -- mov.l @r1, r1 -- mov.l event_mask, r0 -- and r0,r1 -- mov.l trapcode_k, r2 -- cmp/eq r1,r2 -- bt 1f -- bra handler_100 ! if not a trapa, go to default handler -- nop --1: -- mov.l trapa_k, r0 -- mov.l @r0, r0 -- shlr2 r0 ! trapa code is shifted by 2. -- cmp/eq #33, r0 -- bt 2f -- bra handler_100 -- nop --2: -- -- ! If here then it looks like we have trap #33 -- ! Now we need to call mcount with the following convention -- ! Save and restore r4..r7 -- mov.l r4,@-r15 -- mov.l r5,@-r15 -- mov.l r6,@-r15 -- mov.l r7,@-r15 -- sts.l pr,@-r15 -+ ! Program can return here (not likely) or jump here directly -+ ! from anywhere in it to go straight back to the monitor -+_arch_real_exit: -+ ! Save exit code parameter to r8 -+ mov r4, r8 -+ -+ ! Reset SR -+ mov.l old_sr,r0 -+ ldc r0,sr -+ -+ ! Disable MMU, invalidate TLB -+ mov #4,r0 -+ mov.l mmu_addr,r1 -+ mov.l r0,@r1 -+ -+ ! Wait (just in case) -+ nop ! 1 -+ nop ! 2 -+ nop ! 3 -+ nop ! 4 -+ nop ! 5 -+ nop ! 6 -+ nop ! 7 -+ nop ! 8 -+ -+ ! Restore VBR -+ mov.l old_vbr,r0 -+ ldc r0,vbr - -- ! r4 is frompc. -- ! r5 is selfpc -- ! r0 is the branch back address. -- ! The code sequence emitted by gcc for the profiling trap is -- ! .align 2 -- ! trapa #33 -- ! .align 2 -- ! .long lab Where lab is planted by the compiler. This is the address -- ! of a datum that needs to be incremented. -- sts pr, r4 ! frompc -- stc spc, r5 ! selfpc -- mov #2, r2 -- not r2, r2 ! pattern to align to 4 -- and r2, r5 ! r5 now has aligned address --! add #4, r5 ! r5 now has address of address -- mov r5, r2 ! Remember it. --! mov.l @r5, r5 ! r5 has value of lable (lab in above example) -- add #8, r2 ...<truncated>... hooks/post-receive -- A pseudo Operating System for the Dreamcast. |
From: ljsebald <ljs...@us...> - 2023-06-05 21:55:18
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "A pseudo Operating System for the Dreamcast.". The branch, master has been updated via 1cc2d2c6c871f55b4265169979236e0e4ab369bb (commit) via caa826f5ec97eb0385c964d659a06317338a370d (commit) via 33d864892a5661f73b92836942539c819b6ef2ad (commit) via c4192821aa1f78f2afc3d169cf9aad9433901168 (commit) via 66731b2d82fadef8249b3db63c90b0bbffc976ac (commit) via 6afbd853b9dee7f622b7a090a3c636de75b6fed1 (commit) via d1b4cfb687af5458947e6e83f4b93d5df0606e00 (commit) via 10e43a3bd4e92ec7e27f3b2fc1ce3a5247137315 (commit) from e9ff3f294f0639fd7b8d755a5e004f521c692b24 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 1cc2d2c6c871f55b4265169979236e0e4ab369bb Author: Donald Haase <qu...@ya...> Date: Mon Jun 5 17:54:05 2023 -0400 Cleanup romdisk creation and utilization in examples (#241) commit caa826f5ec97eb0385c964d659a06317338a370d Author: Quzar <qu...@co...> Date: Sun Jun 4 21:01:36 2023 -0400 Revert "Cleanup romdisk creation and utilization in examples" This reverts commit 33d864892a5661f73b92836942539c819b6ef2ad. commit 33d864892a5661f73b92836942539c819b6ef2ad Author: Quzar <qu...@co...> Date: Sun Jun 4 20:59:02 2023 -0400 Cleanup romdisk creation and utilization in examples commit c4192821aa1f78f2afc3d169cf9aad9433901168 Merge: e9ff3f2 66731b2 Author: Donald Haase <qu...@ya...> Date: Sun Jun 4 20:00:24 2023 -0400 Merge pull request #239 from Dreamcast-Projects/BuiltInExampleWarnings Built in example warnings commit 66731b2d82fadef8249b3db63c90b0bbffc976ac Merge: 6afbd85 e9ff3f2 Author: Andress Barajas <and...@gm...> Date: Sun Jun 4 08:50:05 2023 -0700 Merge branch 'KallistiOS:master' into BuiltInExampleWarnings commit 6afbd853b9dee7f622b7a090a3c636de75b6fed1 Author: Andress Barajas <and...@gm...> Date: Sun Jun 4 08:47:38 2023 -0700 Fix warnings and use cont_btn_callback_t instead commit d1b4cfb687af5458947e6e83f4b93d5df0606e00 Merge: 10e43a3 01124ad Author: Andress Barajas <and...@gm...> Date: Sat Jun 3 21:36:46 2023 -0700 Merge branch 'KallistiOS:master' into BuiltInExampleWarnings commit 10e43a3bd4e92ec7e27f3b2fc1ce3a5247137315 Author: Andress Barajas <and...@gm...> Date: Thu Jun 1 22:19:26 2023 -0700 Fix two examples ----------------------------------------------------------------------- Summary of changes: Makefile.rules | 2 +- examples/dreamcast/basic/exec/Makefile | 2 +- examples/dreamcast/cpp/modplug_test/Makefile | 7 +------ examples/dreamcast/libdream/320x240/320x240.c | 2 +- examples/dreamcast/libdream/640x480/640x480.c | 2 +- examples/dreamcast/libdream/800x608/800x608.c | 2 +- examples/dreamcast/libdream/vmu/vmu.c | 3 ++- examples/dreamcast/pvr/bumpmap/Makefile | 2 +- examples/dreamcast/random/Makefile | 11 +++-------- examples/dreamcast/random/romdisk/.keepme | 0 examples/dreamcast/rumble/Makefile | 6 +++--- examples/dreamcast/sd/speedtest/sd-speedtest.c | 1 + examples/dreamcast/sound/ghettoplay-vorbis/Makefile | 7 +------ examples/dreamcast/sound/ghettoplay-vorbis/ghettoplay.c | 4 ++-- examples/dreamcast/sound/hello-mp3/Makefile | 9 ++------- examples/dreamcast/sound/hello-mp3/readme.txt | 7 +++---- examples/dreamcast/sound/hello-ogg/Makefile | 10 ++-------- examples/dreamcast/sound/hello-ogg/readme.txt | 7 +++---- examples/dreamcast/sound/hello-opus/Makefile | 9 ++------- examples/dreamcast/sound/hello-opus/{README => readme.txt} | 0 examples/dreamcast/tsunami/banner/banner.cpp | 2 +- examples/dreamcast/tsunami/font/font.cpp | 2 +- examples/dreamcast/tsunami/genmenu/genmenu.cpp | 2 +- examples/dreamcast/vmu/vmu_pkg/Makefile | 12 +++--------- examples/dreamcast/vmu/vmu_pkg/romdisk/.keepme | 0 examples/dreamcast/vmu/vmu_pkg/vmu.c | 3 --- kernel/arch/dreamcast/hardware/maple/purupuru.c | 1 - 27 files changed, 37 insertions(+), 78 deletions(-) delete mode 100644 examples/dreamcast/random/romdisk/.keepme rename examples/dreamcast/sound/hello-opus/{README => readme.txt} (100%) delete mode 100644 examples/dreamcast/vmu/vmu_pkg/romdisk/.keepme diff --git a/Makefile.rules b/Makefile.rules index 78d3fb2..37b14ec 100644 --- a/Makefile.rules +++ b/Makefile.rules @@ -64,7 +64,7 @@ $(patsubst %, _clean_dir_%, $(SUBDIRS)): # Define KOS_ROMDISK_DIR in your Makefile if you want these two handy rules. ifdef KOS_ROMDISK_DIR romdisk.img: - $(KOS_GENROMFS) -f romdisk.img -d $(KOS_ROMDISK_DIR) -v -x .svn + $(KOS_GENROMFS) -f romdisk.img -d $(KOS_ROMDISK_DIR) -v -x .svn -x .keepme romdisk.o: romdisk.img $(KOS_BASE)/utils/bin2o/bin2o romdisk.img romdisk romdisk.o diff --git a/examples/dreamcast/basic/exec/Makefile b/examples/dreamcast/basic/exec/Makefile index 928599d..e205c64 100644 --- a/examples/dreamcast/basic/exec/Makefile +++ b/examples/dreamcast/basic/exec/Makefile @@ -28,7 +28,7 @@ $(SUBTARGET): $(SUBOBJS) # You can safely remove the next two targets if you don't use a ROMDISK romdisk.img: $(SUBTARGET) - $(KOS_GENROMFS) -f romdisk.img -d romdisk -v + $(KOS_GENROMFS) -f romdisk.img -d romdisk -v -x .keepme romdisk.o: romdisk.img $(KOS_BASE)/utils/bin2o/bin2o romdisk.img romdisk romdisk.o diff --git a/examples/dreamcast/cpp/modplug_test/Makefile b/examples/dreamcast/cpp/modplug_test/Makefile index 0a9af3e..0c7b791 100644 --- a/examples/dreamcast/cpp/modplug_test/Makefile +++ b/examples/dreamcast/cpp/modplug_test/Makefile @@ -1,5 +1,6 @@ TARGET = example.elf OBJS = example.o romdisk.o +KOS_ROMDISK_DIR = romdisk all: rm-elf $(TARGET) @@ -14,12 +15,6 @@ rm-elf: $(TARGET): $(OBJS) kos-c++ -o $(TARGET) $(OBJS) -lmodplug -lm -romdisk.img: - $(KOS_GENROMFS) -f romdisk.img -d romdisk -v - -romdisk.o: romdisk.img - $(KOS_BASE)/utils/bin2o/bin2o romdisk.img romdisk romdisk.o - run: $(TARGET) $(KOS_LOADER) $(TARGET) diff --git a/examples/dreamcast/libdream/320x240/320x240.c b/examples/dreamcast/libdream/320x240/320x240.c index f30748d..5eadc8a 100644 --- a/examples/dreamcast/libdream/320x240/320x240.c +++ b/examples/dreamcast/libdream/320x240/320x240.c @@ -8,7 +8,7 @@ int main(int argc, char **argv) { /* Press all buttons to exit */ cont_btn_callback(0, CONT_START | CONT_A | CONT_B | CONT_X | CONT_Y, - (void (*)(unsigned char, long unsigned int))arch_exit); + (cont_btn_callback_t)arch_exit); /* Set the video mode */ vid_set_mode(DM_320x240, PM_RGB565); diff --git a/examples/dreamcast/libdream/640x480/640x480.c b/examples/dreamcast/libdream/640x480/640x480.c index 1d25319..31e63fd 100644 --- a/examples/dreamcast/libdream/640x480/640x480.c +++ b/examples/dreamcast/libdream/640x480/640x480.c @@ -11,7 +11,7 @@ int main(int argc, char **argv) { /* Press all buttons to exit */ cont_btn_callback(0, CONT_START | CONT_A | CONT_B | CONT_X | CONT_Y, - (void (*)(unsigned char, long unsigned int))arch_exit); + (cont_btn_callback_t)arch_exit); /* Bother us with output only if something died */ dbglog_set_level(DBG_DEAD); diff --git a/examples/dreamcast/libdream/800x608/800x608.c b/examples/dreamcast/libdream/800x608/800x608.c index 83fd3c5..40fc6ea 100644 --- a/examples/dreamcast/libdream/800x608/800x608.c +++ b/examples/dreamcast/libdream/800x608/800x608.c @@ -20,7 +20,7 @@ int main(int argc, char **argv) { /* Press all buttons to exit */ cont_btn_callback(0, CONT_START | CONT_A | CONT_B | CONT_X | CONT_Y, - (void (*)(unsigned char, long unsigned int))arch_exit); + (cont_btn_callback_t)arch_exit); /* Set video mode */ vid_set_mode(DM_800x608, PM_RGB565); diff --git a/examples/dreamcast/libdream/vmu/vmu.c b/examples/dreamcast/libdream/vmu/vmu.c index ad9af9c..73a5832 100644 --- a/examples/dreamcast/libdream/vmu/vmu.c +++ b/examples/dreamcast/libdream/vmu/vmu.c @@ -9,7 +9,8 @@ /* Draws one file entry, along with its "description" in the boot rom file manager. */ -int y1 = 20 + 36; +static int y1 = 20 + 36; + void draw_one(maple_device_t *addr, char *fn, uint16 hdrblock) { bfont_draw_str(vram_s + y1 * 640 + 10, 640, 0, "File "); bfont_draw_str(vram_s + y1 * 640 + 10 + 5 * 12, 640, 0, fn); diff --git a/examples/dreamcast/pvr/bumpmap/Makefile b/examples/dreamcast/pvr/bumpmap/Makefile index 99f6954..7b91855 100644 --- a/examples/dreamcast/pvr/bumpmap/Makefile +++ b/examples/dreamcast/pvr/bumpmap/Makefile @@ -15,7 +15,7 @@ $(TARGET): $(OBJS) kos-cc -o $(TARGET) $(OBJS) -lkmg -lkosutils romdisk.img: romdisk/bricks.kmg romdisk/bumpmap.raw - $(KOS_GENROMFS) -f romdisk.img -d romdisk -v + $(KOS_GENROMFS) -f romdisk.img -d romdisk -v -x .keepme romdisk.o: romdisk.img $(KOS_BASE)/utils/bin2o/bin2o romdisk.img romdisk romdisk.o diff --git a/examples/dreamcast/random/Makefile b/examples/dreamcast/random/Makefile index ea263b2..251e4da 100644 --- a/examples/dreamcast/random/Makefile +++ b/examples/dreamcast/random/Makefile @@ -7,12 +7,7 @@ TARGET = random.elf # List all of your C files here, but change the extension to ".o" -# Include "romdisk.o" if you want a rom disk. -OBJS = random.o romdisk.o - -# If you define this, the Makefile.rules will create a romdisk.o for you -# from the named dir. -KOS_ROMDISK_DIR = romdisk +OBJS = random.o KOS_CFLAGS += -std=c99 @@ -26,7 +21,7 @@ clean: rm-elf -rm -f $(OBJS) rm-elf: - -rm -f $(TARGET) romdisk.* + -rm -f $(TARGET) $(TARGET): $(OBJS) kos-cc -o $(TARGET) $(OBJS) @@ -35,5 +30,5 @@ run: $(TARGET) $(KOS_LOADER) $(TARGET) dist: $(TARGET) - -rm -f $(OBJS) romdisk.img + -rm -f $(OBJS) $(KOS_STRIP) $(TARGET) diff --git a/examples/dreamcast/random/romdisk/.keepme b/examples/dreamcast/random/romdisk/.keepme deleted file mode 100644 index e69de29..0000000 diff --git a/examples/dreamcast/rumble/Makefile b/examples/dreamcast/rumble/Makefile index a1c79df..65aa3ab 100644 --- a/examples/dreamcast/rumble/Makefile +++ b/examples/dreamcast/rumble/Makefile @@ -13,10 +13,10 @@ all: rm-elf $(TARGET) include $(KOS_BASE)/Makefile.rules clean: rm-elf - rm -f $(OBJS) + -rm -f $(OBJS) rm-elf: - rm -f $(TARGET) romdisk.* + -rm -f $(TARGET) romdisk.* $(TARGET): $(OBJS) kos-cc -o $(TARGET) $(OBJS) -lparallax -lz -lm @@ -25,5 +25,5 @@ run: $(TARGET) $(KOS_LOADER) $(TARGET) dist: $(TARGET) - rm -f $(OBJS) romdisk.img + -rm -f $(OBJS) romdisk.img $(KOS_STRIP) $(TARGET) diff --git a/examples/dreamcast/sd/speedtest/sd-speedtest.c b/examples/dreamcast/sd/speedtest/sd-speedtest.c index e7558c1..b626420 100644 --- a/examples/dreamcast/sd/speedtest/sd-speedtest.c +++ b/examples/dreamcast/sd/speedtest/sd-speedtest.c @@ -18,6 +18,7 @@ #include <dc/maple.h> #include <dc/maple/controller.h> +#include <arch/arch.h> #include <arch/timer.h> #include <kos/init.h> diff --git a/examples/dreamcast/sound/ghettoplay-vorbis/Makefile b/examples/dreamcast/sound/ghettoplay-vorbis/Makefile index a8bfe60..31bb7b9 100644 --- a/examples/dreamcast/sound/ghettoplay-vorbis/Makefile +++ b/examples/dreamcast/sound/ghettoplay-vorbis/Makefile @@ -1,5 +1,6 @@ TARGET = ghettoplay.elf OBJS = ghettoplay.o texture.o bkg.o 3dutils.o songmenu.o romdisk.o +KOS_ROMDISK_DIR = romdisk all: rm-elf $(TARGET) @@ -14,12 +15,6 @@ rm-elf: $(TARGET): $(OBJS) kos-cc -o $(TARGET) $(OBJS) -loggvorbisplay -lvorbis -logg -lm -romdisk.img: - $(KOS_GENROMFS) -f romdisk.img -d romdisk -v - -romdisk.o: romdisk.img - $(KOS_BASE)/utils/bin2o/bin2o romdisk.img romdisk romdisk.o - run: $(TARGET) $(KOS_LOADER) $(TARGET) diff --git a/examples/dreamcast/sound/ghettoplay-vorbis/ghettoplay.c b/examples/dreamcast/sound/ghettoplay-vorbis/ghettoplay.c index f573679..9b1f1b3 100644 --- a/examples/dreamcast/sound/ghettoplay-vorbis/ghettoplay.c +++ b/examples/dreamcast/sound/ghettoplay-vorbis/ghettoplay.c @@ -174,9 +174,9 @@ int main(int argc, char **argv) { /* If we're playing a file fill out the File information */ if(sndoggvorbis_isplaying()) { - char bitrate[6]; + char bitrate[7]; long bitrateval = sndoggvorbis_getbitrate(); - sprintf(bitrate, "%6ld", bitrateval); + snprintf(bitrate, sizeof(bitrate), "%6ld", bitrateval); char * artist, * title, * genre; artist = sndoggvorbis_getartist(); diff --git a/examples/dreamcast/sound/hello-mp3/Makefile b/examples/dreamcast/sound/hello-mp3/Makefile index 4c48ca3..545a337 100644 --- a/examples/dreamcast/sound/hello-mp3/Makefile +++ b/examples/dreamcast/sound/hello-mp3/Makefile @@ -1,6 +1,7 @@ TARGET = mp3test.elf -OBJS = mp3test.o romdisk.o +OBJS = mp3test.o romdisk.o +KOS_ROMDISK_DIR = romdisk all: rm-elf $(TARGET) @@ -15,12 +16,6 @@ rm-elf: $(TARGET): $(OBJS) kos-cc -o $(TARGET) $(OBJS) -lmp3 -lm -romdisk.img: - $(KOS_GENROMFS) -f romdisk.img -d romdisk -v - -romdisk.o: romdisk.img - $(KOS_BASE)/utils/bin2o/bin2o romdisk.img romdisk romdisk.o - run: $(TARGET) $(KOS_LOADER) $(TARGET) # dc-tool -p -b 115200 -x $(TARGET) diff --git a/examples/dreamcast/sound/hello-mp3/readme.txt b/examples/dreamcast/sound/hello-mp3/readme.txt index d2f87fb..981db63 100644 --- a/examples/dreamcast/sound/hello-mp3/readme.txt +++ b/examples/dreamcast/sound/hello-mp3/readme.txt @@ -1,4 +1,3 @@ -This examples expects a file called "test.mp3" in the Romdisk. So just put -a small MP3 file there, compile it and upload it to your DC to see -it working. - +This example expects a file called "test.mp3" to exist in the root of the +romdisk. Put a relatively small mp3 file with the correct filename in the +romdisk directory before compiling if you want the example to work. ;) diff --git a/examples/dreamcast/sound/hello-ogg/Makefile b/examples/dreamcast/sound/hello-ogg/Makefile index ed11a72..0fcb506 100644 --- a/examples/dreamcast/sound/hello-ogg/Makefile +++ b/examples/dreamcast/sound/hello-ogg/Makefile @@ -5,7 +5,8 @@ # Based on KOS Makefiles by Megan Potter TARGET = vorbistest.elf -OBJS = vorbistest.o romdisk.o +OBJS = vorbistest.o romdisk.o +KOS_ROMDISK_DIR = romdisk all: rm-elf $(TARGET) @@ -23,15 +24,8 @@ $(TARGET): $(OBJS) kos-cc -o $(TARGET) $(OBJS) -ltremor -lm # kos-cc -o $(TARGET) $(OBJS) -loggvorbisplay -lvorbis -logg -lm -romdisk.img: - $(KOS_GENROMFS) -f romdisk.img -d romdisk -v - -romdisk.o: romdisk.img - $(KOS_BASE)/utils/bin2o/bin2o romdisk.img romdisk romdisk.o - run: $(TARGET) $(KOS_LOADER) $(TARGET) -# dc-tool -p -b 115200 -x $(TARGET) dist: $(TARGET) -rm -f $(OBJS) romdisk.img diff --git a/examples/dreamcast/sound/hello-ogg/readme.txt b/examples/dreamcast/sound/hello-ogg/readme.txt index cf85fab..d5c7f6b 100644 --- a/examples/dreamcast/sound/hello-ogg/readme.txt +++ b/examples/dreamcast/sound/hello-ogg/readme.txt @@ -1,4 +1,3 @@ -This examples expects a file called "test.ogg" in the Romdisk. So just put -a small Ogg/Vorbis file there, compile it and upload it to your DC to see -it working. - +This example expects a file called "test.ogg" to exist in the root of the +romdisk. Put a relatively small Ogg/Vorbis file with the correct filename in the +romdisk directory before compiling if you want the example to work. ;) \ No newline at end of file diff --git a/examples/dreamcast/sound/hello-opus/Makefile b/examples/dreamcast/sound/hello-opus/Makefile index ee043c5..840358f 100644 --- a/examples/dreamcast/sound/hello-opus/Makefile +++ b/examples/dreamcast/sound/hello-opus/Makefile @@ -1,5 +1,6 @@ TARGET = opustest.elf -OBJS = opustest.o romdisk.o +OBJS = opustest.o romdisk.o +KOS_ROMDISK_DIR = romdisk all: rm-elf $(TARGET) @@ -14,12 +15,6 @@ rm-elf: $(TARGET): $(OBJS) kos-cc -o $(TARGET) $(OBJS) -lopusplay -lopusfile -lopus -logg -romdisk.img: - $(KOS_GENROMFS) -f romdisk.img -d romdisk -v - -romdisk.o: romdisk.img - $(KOS_BASE)/utils/bin2o/bin2o romdisk.img romdisk romdisk.o - run: $(TARGET) $(KOS_LOADER) $(TARGET) diff --git a/examples/dreamcast/sound/hello-opus/README b/examples/dreamcast/sound/hello-opus/readme.txt similarity index 100% rename from examples/dreamcast/sound/hello-opus/README rename to examples/dreamcast/sound/hello-opus/readme.txt diff --git a/examples/dreamcast/tsunami/banner/banner.cpp b/examples/dreamcast/tsunami/banner/banner.cpp index 00390cf..d46425c 100644 --- a/examples/dreamcast/tsunami/banner/banner.cpp +++ b/examples/dreamcast/tsunami/banner/banner.cpp @@ -112,7 +112,7 @@ int main(int argc, char **argv) { int done = 0, done2 = 0; cont_btn_callback(0, CONT_START | CONT_A | CONT_B | CONT_X | CONT_Y, - (void (*)(unsigned char, long unsigned int))arch_exit); + (cont_btn_callback_t)arch_exit); pvr_init_defaults(); diff --git a/examples/dreamcast/tsunami/font/font.cpp b/examples/dreamcast/tsunami/font/font.cpp index 8eaeb86..8adcc29 100644 --- a/examples/dreamcast/tsunami/font/font.cpp +++ b/examples/dreamcast/tsunami/font/font.cpp @@ -27,7 +27,7 @@ int main(int argc, char **argv) { int done = 0; cont_btn_callback(0, CONT_START | CONT_A | CONT_B | CONT_X | CONT_Y, - (void (*)(unsigned char, long unsigned int))arch_exit); + (cont_btn_callback_t)arch_exit); pvr_init_defaults(); diff --git a/examples/dreamcast/tsunami/genmenu/genmenu.cpp b/examples/dreamcast/tsunami/genmenu/genmenu.cpp index b17b00e..faa3b1a 100644 --- a/examples/dreamcast/tsunami/genmenu/genmenu.cpp +++ b/examples/dreamcast/tsunami/genmenu/genmenu.cpp @@ -134,7 +134,7 @@ int main(int argc, char **argv) { // Guard against an untoward exit during testing. cont_btn_callback(0, CONT_START | CONT_A | CONT_B | CONT_X | CONT_Y, - (void (*)(unsigned char, long unsigned int))arch_exit); + (cont_btn_callback_t)arch_exit); // Get 3D going pvr_init_defaults(); diff --git a/examples/dreamcast/vmu/vmu_pkg/Makefile b/examples/dreamcast/vmu/vmu_pkg/Makefile index c80c858..d1c16bb 100644 --- a/examples/dreamcast/vmu/vmu_pkg/Makefile +++ b/examples/dreamcast/vmu/vmu_pkg/Makefile @@ -7,7 +7,7 @@ TARGET = vmu.elf # List all of your C files here, but change the extension to ".o" -OBJS = vmu.o romdisk.o +OBJS = vmu.o all: rm-elf $(TARGET) @@ -17,21 +17,15 @@ clean: rm-elf -rm -f $(OBJS) rm-elf: - -rm -f $(TARGET) romdisk.* + -rm -f $(TARGET) $(TARGET): $(OBJS) kos-cc -o $(TARGET) $(OBJS) -romdisk.img: - $(KOS_GENROMFS) -f romdisk.img -d romdisk -v - -romdisk.o: romdisk.img - $(KOS_BASE)/utils/bin2o/bin2o romdisk.img romdisk romdisk.o - run: $(TARGET) $(KOS_LOADER) $(TARGET) dist: $(TARGET) - -rm -f $(OBJS) romdisk.img + -rm -f $(OBJS) $(KOS_STRIP) $(TARGET) diff --git a/examples/dreamcast/vmu/vmu_pkg/romdisk/.keepme b/examples/dreamcast/vmu/vmu_pkg/romdisk/.keepme deleted file mode 100644 index e69de29..0000000 diff --git a/examples/dreamcast/vmu/vmu_pkg/vmu.c b/examples/dreamcast/vmu/vmu_pkg/vmu.c index 5ec3b11..83c85d2 100644 --- a/examples/dreamcast/vmu/vmu_pkg/vmu.c +++ b/examples/dreamcast/vmu/vmu_pkg/vmu.c @@ -11,9 +11,6 @@ #include <kos.h> #include <kos/string.h> -extern uint8 romdisk[]; -KOS_INIT_ROMDISK(romdisk); - void draw_dir() { file_t d; int y = 88; diff --git a/kernel/arch/dreamcast/hardware/maple/purupuru.c b/kernel/arch/dreamcast/hardware/maple/purupuru.c index c168754..2723c9f 100644 --- a/kernel/arch/dreamcast/hardware/maple/purupuru.c +++ b/kernel/arch/dreamcast/hardware/maple/purupuru.c @@ -59,7 +59,6 @@ int purupuru_rumble_raw(maple_device_t *dev, uint32 effect) { } int purupuru_rumble(maple_device_t *dev, purupuru_effect_t *effect) { - uint32 *send_buf; uint32 comp_effect; assert(dev != NULL); hooks/post-receive -- A pseudo Operating System for the Dreamcast. |
From: darcagn <da...@us...> - 2023-06-04 05:01:33
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "A pseudo Operating System for the Dreamcast.". The branch, master has been updated via e9ff3f294f0639fd7b8d755a5e004f521c692b24 (commit) via 932ba8f5fda27413fd5fc6b59d36fdbf383d33f2 (commit) from 01124ad934026a6386348426fc3260448c969b4a (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit e9ff3f294f0639fd7b8d755a5e004f521c692b24 Merge: 01124ad 932ba8f Author: darcagn <da...@pr...> Date: Sat Jun 3 23:59:02 2023 -0500 Merge pull request #238 from cepawiel/fix-dcchain-underscores Fix underscores missed in last dc-chain change commit 932ba8f5fda27413fd5fc6b59d36fdbf383d33f2 Author: Colton Pawielski <cep...@mt...> Date: Sat Jun 3 23:44:15 2023 -0500 Fix underscores missed in last dc-chain commit ----------------------------------------------------------------------- Summary of changes: utils/dc-chain/scripts/build.mk | 10 +++++----- utils/dc-chain/scripts/download.mk | 2 +- utils/dc-chain/scripts/patch.mk | 10 +++++----- 3 files changed, 11 insertions(+), 11 deletions(-) diff --git a/utils/dc-chain/scripts/build.mk b/utils/dc-chain/scripts/build.mk index 4dc63a1..ec3ed2b 100644 --- a/utils/dc-chain/scripts/build.mk +++ b/utils/dc-chain/scripts/build.mk @@ -49,13 +49,13 @@ build-sh4-gcc-pass2: fixup-sh4-newlib build-arm-gcc-pass1: build-arm-binutils # SH4 Download Dependencies -build-sh4-binutils: fetch_sh_binutils -build-sh4-gcc-pass1 build-sh4-gcc-pass2: fetch_sh_gcc -build-sh4-newlib-only: fetch_newlib +build-sh4-binutils: fetch-sh-binutils +build-sh4-gcc-pass1 build-sh4-gcc-pass2: fetch-sh-gcc +build-sh4-newlib-only: fetch-newlib # ARM Download Dependencies -build-arm-binutils: fetch_arm_binutils -build-arm-gcc-pass1: fetch_arm_gcc +build-arm-binutils: fetch-arm-binutils +build-arm-gcc-pass1: fetch-arm-gcc # GDB Patch Dependency build_gdb: patch_gdb diff --git a/utils/dc-chain/scripts/download.mk b/utils/dc-chain/scripts/download.mk index d74e1bd..756eeb0 100644 --- a/utils/dc-chain/scripts/download.mk +++ b/utils/dc-chain/scripts/download.mk @@ -153,7 +153,7 @@ fetch-arm-gcc: $(stamp_arm_gcc_download) $(if $(filter 1,$(use_custom_dependenci fetch-gdb: $(stamp_gdb_download) -fetch-sh4: fetch-sh_binutils fetch-sh-gcc fetch-newlib +fetch-sh4: fetch-sh-binutils fetch-sh-gcc fetch-newlib fetch-arm: fetch-arm-binutils fetch-arm-gcc fetch: fetch-sh4 fetch-arm diff --git a/utils/dc-chain/scripts/patch.mk b/utils/dc-chain/scripts/patch.mk index 7427813..66aef90 100644 --- a/utils/dc-chain/scripts/patch.mk +++ b/utils/dc-chain/scripts/patch.mk @@ -49,13 +49,13 @@ ifeq (1,$(do_kos_patching)) endif # Require SH downloads before patching -patch-sh4-binutils: fetch_sh_binutils -patch-sh4-gcc: fetch_sh_gcc -patch-sh4-newlib: fetch_newlib +patch-sh4-binutils: fetch-sh-binutils +patch-sh4-gcc: fetch-sh-gcc +patch-sh4-newlib: fetch-newlib # Require ARM downloads before patching -patch-arm-binutils: fetch_arm_binutils -patch-arm-gcc: fetch_arm_gcc +patch-arm-binutils: fetch-arm-binutils +patch-arm-gcc: fetch-arm-gcc uname_p := $(shell uname -p) uname_s := $(shell uname -s) hooks/post-receive -- A pseudo Operating System for the Dreamcast. |
From: Allura u. <al...@so...> - 2023-06-04 03:49:12
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "UNNAMED PROJECT". The branch, master has been updated via 86bc85d765b6a288e8c6f35c3442801da1b164b8 (commit) from 517ac0bde64de887ca0ff9b4de0c92b79b11b665 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 86bc85d765b6a288e8c6f35c3442801da1b164b8 Author: darc <da...@pr...> Date: Sat Jun 3 22:45:20 2023 -0500 Fix libkosh building after MAX_FN_LEN -> NAME_MAX change in KOS ----------------------------------------------------------------------- Summary of changes: builtin.c | 40 ++++++++++++++++++++-------------------- chdir.c | 8 ++++---- input.c | 2 +- 3 files changed, 25 insertions(+), 25 deletions(-) diff --git a/builtin.c b/builtin.c index 2732f6f..21dc6df 100644 --- a/builtin.c +++ b/builtin.c @@ -58,7 +58,7 @@ static void builtin_exit(int argc, char *argv[]) { static void builtin_ls(int argc, char *argv[]) { dirent_t *ent; uint32 hnd; - char dir[MAX_FN_LEN]; + char dir[NAME_MAX]; int lflag; lflag = 0; @@ -68,7 +68,7 @@ static void builtin_ls(int argc, char *argv[]) { lflag = 1; } - getcwd(dir, MAX_FN_LEN); + getcwd(dir, NAME_MAX); conio_printf("Reading %s\n", dir); @@ -100,9 +100,9 @@ static void builtin_cd(int argc, char *argv[]) { /* print the current directory */ static void builtin_pwd(int argc, char *argv[]) { - char buff[MAX_FN_LEN]; + char buff[NAME_MAX]; - conio_printf("%s\n", getcwd(buff, MAX_FN_LEN)); + conio_printf("%s\n", getcwd(buff, NAME_MAX)); } /* clear the screen */ @@ -124,7 +124,7 @@ static void builtin_echo(int argc, char *argv[]) { static void builtin_cat(int argc, char *argv[]) { uint32 hnd; char buff[256]; - char fn[MAX_FN_LEN]; + char fn[NAME_MAX]; int cnt; if (argc != 2) { @@ -133,7 +133,7 @@ static void builtin_cat(int argc, char *argv[]) { } /* the the abs path */ - makeabspath(fn, argv[1], MAX_FN_LEN); + makeabspath(fn, argv[1], NAME_MAX); hnd = fs_open(fn, O_RDONLY); if (!hnd) { @@ -161,7 +161,7 @@ static void builtin_cat(int argc, char *argv[]) { /* dump files as hex */ static void builtin_hd(int argc, char *argv[]) { - char fn[MAX_FN_LEN]; + char fn[NAME_MAX]; char buff[10]; uint32 hnd; int cnt; @@ -171,7 +171,7 @@ static void builtin_hd(int argc, char *argv[]) { return; } - makeabspath(fn, argv[1], MAX_FN_LEN); + makeabspath(fn, argv[1], NAME_MAX); hnd = fs_open(fn, O_RDONLY); if (!hnd) { @@ -203,8 +203,8 @@ static void builtin_hd(int argc, char *argv[]) { /* copy files */ static void builtin_cp(int argc, char *argv[]) { char buff[256]; - char srcfn[MAX_FN_LEN]; - char destfn[MAX_FN_LEN]; + char srcfn[NAME_MAX]; + char destfn[NAME_MAX]; uint32 src; uint32 dest; int cnt; @@ -215,8 +215,8 @@ static void builtin_cp(int argc, char *argv[]) { } /* get abs paths */ - makeabspath(srcfn, argv[1], MAX_FN_LEN); - makeabspath(destfn, argv[2], MAX_FN_LEN); + makeabspath(srcfn, argv[1], NAME_MAX); + makeabspath(destfn, argv[2], NAME_MAX); src = fs_open(srcfn, O_RDONLY); if (!src) { conio_printf("Error opening %s\n", srcfn); return; } @@ -233,7 +233,7 @@ static void builtin_cp(int argc, char *argv[]) { /* unlink files */ static void builtin_rm(int argc, char *argv[]) { - char fn[MAX_FN_LEN]; + char fn[NAME_MAX]; if (argc != 2) { conio_printf("usage: rm file\n"); @@ -241,7 +241,7 @@ static void builtin_rm(int argc, char *argv[]) { } /* get the abs path for the fn to rem */ - makeabspath(fn, argv[1], MAX_FN_LEN); + makeabspath(fn, argv[1], NAME_MAX); if (fs_unlink(fn) != 0) conio_printf("Error unlinking %s.\n", fn); @@ -249,7 +249,7 @@ static void builtin_rm(int argc, char *argv[]) { /* create a directory */ static void builtin_mkdir(int argc, char *argv[]) { - char fn[MAX_FN_LEN]; + char fn[NAME_MAX]; if (argc != 2) { conio_printf("usage: mkdir dirname\n"); @@ -257,7 +257,7 @@ static void builtin_mkdir(int argc, char *argv[]) { } /* get the abs path for the dir to create */ - makeabspath(fn, argv[1], MAX_FN_LEN); + makeabspath(fn, argv[1], NAME_MAX); if (fs_mkdir(fn) != 0) conio_printf("Error making directory %s.\n", fn); @@ -265,7 +265,7 @@ static void builtin_mkdir(int argc, char *argv[]) { /* delete a directory */ static void builtin_rmdir(int argc, char *argv[]) { - char fn[MAX_FN_LEN]; + char fn[NAME_MAX]; if (argc != 2) { conio_printf("usage: rmdir dirname\n"); @@ -273,7 +273,7 @@ static void builtin_rmdir(int argc, char *argv[]) { } /* get the abs path for the dir to delete */ - makeabspath(fn, argv[1], MAX_FN_LEN); + makeabspath(fn, argv[1], NAME_MAX); if (fs_rmdir(fn) != 0) conio_printf("Error deleting directory %s.\n", fn); @@ -363,7 +363,7 @@ static void builtin_die(int argc, char *argv[]) { #ifdef _arch_dreamcast /* Do a screen dump -- note, won't always work 100% due to threading stuff */ static void builtin_sshot(int argc, char *argv[]) { - char fn[MAX_FN_LEN]; + char fn[NAME_MAX]; if (argc != 2) { conio_printf("usage: sshot outfile.ppm\n"); @@ -371,7 +371,7 @@ static void builtin_sshot(int argc, char *argv[]) { } /* get the abs path for the dir to create */ - makeabspath(fn, argv[1], MAX_FN_LEN); + makeabspath(fn, argv[1], NAME_MAX); conio_printf("Doing a screen shot to %s\n", fn); vid_screen_shot(fn); diff --git a/chdir.c b/chdir.c index 51595b0..2f6c14a 100644 --- a/chdir.c +++ b/chdir.c @@ -9,7 +9,7 @@ #include "kosh.h" /* the current directory */ -static char cwd[MAX_FN_LEN]; +static char cwd[NAME_MAX]; /* read a pathname based on the current directory and turn it into an abs one, we don't check for validity, or really do anything except handle ..'s and .'s */ @@ -62,10 +62,10 @@ int makeabspath(char *buff, char *path, size_t size) { /* change the current directory (dir is an absolute path for now) */ int kosh_chdir(char *dir) { - char buff[MAX_FN_LEN]; + char buff[NAME_MAX]; - makeabspath(buff, dir, MAX_FN_LEN); - strncpy(cwd, buff, MAX_FN_LEN); + makeabspath(buff, dir, NAME_MAX); + strncpy(cwd, buff, NAME_MAX); fs_chdir(cwd); diff --git a/input.c b/input.c index 1606983..1088490 100644 --- a/input.c +++ b/input.c @@ -36,7 +36,7 @@ void input_oneloop() { /* try to run the command as a builtin */ if (!kosh_builtin_command(argc, argv)) { - /* makeabspath(buff, argv[0], MAX_FN_LEN); */ + /* makeabspath(buff, argv[0], NAME_MAX); */ /* the builtin failed so we try an external */ /* if (process->load_and_exec(buff, argc, argv)) hooks/post-receive -- UNNAMED PROJECT |
From: darcagn <da...@us...> - 2023-06-04 03:42:33
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "UNNAMED PROJECT". The branch, fix-build has been deleted was 63cbf0bc84abb32752ecbd0f459ecb3ff5b401d6 ----------------------------------------------------------------------- 63cbf0bc84abb32752ecbd0f459ecb3ff5b401d6 Fix libkosh building after MAX_FN_LEN -> NAME_MAX change in KOS ----------------------------------------------------------------------- hooks/post-receive -- UNNAMED PROJECT |
From: darcagn <da...@us...> - 2023-06-04 03:20:56
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "UNNAMED PROJECT". The branch, fix-build has been updated via 63cbf0bc84abb32752ecbd0f459ecb3ff5b401d6 (commit) from 517ac0bde64de887ca0ff9b4de0c92b79b11b665 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 63cbf0bc84abb32752ecbd0f459ecb3ff5b401d6 Author: darc <da...@pr...> Date: Sat Jun 3 22:20:47 2023 -0500 Fix libkosh building after MAX_FN_LEN -> NAME_MAX change in KOS ----------------------------------------------------------------------- Summary of changes: builtin.c | 40 ++++++++++++++++++++-------------------- chdir.c | 8 ++++---- input.c | 2 +- 3 files changed, 25 insertions(+), 25 deletions(-) diff --git a/builtin.c b/builtin.c index 2732f6f..21dc6df 100644 --- a/builtin.c +++ b/builtin.c @@ -58,7 +58,7 @@ static void builtin_exit(int argc, char *argv[]) { static void builtin_ls(int argc, char *argv[]) { dirent_t *ent; uint32 hnd; - char dir[MAX_FN_LEN]; + char dir[NAME_MAX]; int lflag; lflag = 0; @@ -68,7 +68,7 @@ static void builtin_ls(int argc, char *argv[]) { lflag = 1; } - getcwd(dir, MAX_FN_LEN); + getcwd(dir, NAME_MAX); conio_printf("Reading %s\n", dir); @@ -100,9 +100,9 @@ static void builtin_cd(int argc, char *argv[]) { /* print the current directory */ static void builtin_pwd(int argc, char *argv[]) { - char buff[MAX_FN_LEN]; + char buff[NAME_MAX]; - conio_printf("%s\n", getcwd(buff, MAX_FN_LEN)); + conio_printf("%s\n", getcwd(buff, NAME_MAX)); } /* clear the screen */ @@ -124,7 +124,7 @@ static void builtin_echo(int argc, char *argv[]) { static void builtin_cat(int argc, char *argv[]) { uint32 hnd; char buff[256]; - char fn[MAX_FN_LEN]; + char fn[NAME_MAX]; int cnt; if (argc != 2) { @@ -133,7 +133,7 @@ static void builtin_cat(int argc, char *argv[]) { } /* the the abs path */ - makeabspath(fn, argv[1], MAX_FN_LEN); + makeabspath(fn, argv[1], NAME_MAX); hnd = fs_open(fn, O_RDONLY); if (!hnd) { @@ -161,7 +161,7 @@ static void builtin_cat(int argc, char *argv[]) { /* dump files as hex */ static void builtin_hd(int argc, char *argv[]) { - char fn[MAX_FN_LEN]; + char fn[NAME_MAX]; char buff[10]; uint32 hnd; int cnt; @@ -171,7 +171,7 @@ static void builtin_hd(int argc, char *argv[]) { return; } - makeabspath(fn, argv[1], MAX_FN_LEN); + makeabspath(fn, argv[1], NAME_MAX); hnd = fs_open(fn, O_RDONLY); if (!hnd) { @@ -203,8 +203,8 @@ static void builtin_hd(int argc, char *argv[]) { /* copy files */ static void builtin_cp(int argc, char *argv[]) { char buff[256]; - char srcfn[MAX_FN_LEN]; - char destfn[MAX_FN_LEN]; + char srcfn[NAME_MAX]; + char destfn[NAME_MAX]; uint32 src; uint32 dest; int cnt; @@ -215,8 +215,8 @@ static void builtin_cp(int argc, char *argv[]) { } /* get abs paths */ - makeabspath(srcfn, argv[1], MAX_FN_LEN); - makeabspath(destfn, argv[2], MAX_FN_LEN); + makeabspath(srcfn, argv[1], NAME_MAX); + makeabspath(destfn, argv[2], NAME_MAX); src = fs_open(srcfn, O_RDONLY); if (!src) { conio_printf("Error opening %s\n", srcfn); return; } @@ -233,7 +233,7 @@ static void builtin_cp(int argc, char *argv[]) { /* unlink files */ static void builtin_rm(int argc, char *argv[]) { - char fn[MAX_FN_LEN]; + char fn[NAME_MAX]; if (argc != 2) { conio_printf("usage: rm file\n"); @@ -241,7 +241,7 @@ static void builtin_rm(int argc, char *argv[]) { } /* get the abs path for the fn to rem */ - makeabspath(fn, argv[1], MAX_FN_LEN); + makeabspath(fn, argv[1], NAME_MAX); if (fs_unlink(fn) != 0) conio_printf("Error unlinking %s.\n", fn); @@ -249,7 +249,7 @@ static void builtin_rm(int argc, char *argv[]) { /* create a directory */ static void builtin_mkdir(int argc, char *argv[]) { - char fn[MAX_FN_LEN]; + char fn[NAME_MAX]; if (argc != 2) { conio_printf("usage: mkdir dirname\n"); @@ -257,7 +257,7 @@ static void builtin_mkdir(int argc, char *argv[]) { } /* get the abs path for the dir to create */ - makeabspath(fn, argv[1], MAX_FN_LEN); + makeabspath(fn, argv[1], NAME_MAX); if (fs_mkdir(fn) != 0) conio_printf("Error making directory %s.\n", fn); @@ -265,7 +265,7 @@ static void builtin_mkdir(int argc, char *argv[]) { /* delete a directory */ static void builtin_rmdir(int argc, char *argv[]) { - char fn[MAX_FN_LEN]; + char fn[NAME_MAX]; if (argc != 2) { conio_printf("usage: rmdir dirname\n"); @@ -273,7 +273,7 @@ static void builtin_rmdir(int argc, char *argv[]) { } /* get the abs path for the dir to delete */ - makeabspath(fn, argv[1], MAX_FN_LEN); + makeabspath(fn, argv[1], NAME_MAX); if (fs_rmdir(fn) != 0) conio_printf("Error deleting directory %s.\n", fn); @@ -363,7 +363,7 @@ static void builtin_die(int argc, char *argv[]) { #ifdef _arch_dreamcast /* Do a screen dump -- note, won't always work 100% due to threading stuff */ static void builtin_sshot(int argc, char *argv[]) { - char fn[MAX_FN_LEN]; + char fn[NAME_MAX]; if (argc != 2) { conio_printf("usage: sshot outfile.ppm\n"); @@ -371,7 +371,7 @@ static void builtin_sshot(int argc, char *argv[]) { } /* get the abs path for the dir to create */ - makeabspath(fn, argv[1], MAX_FN_LEN); + makeabspath(fn, argv[1], NAME_MAX); conio_printf("Doing a screen shot to %s\n", fn); vid_screen_shot(fn); diff --git a/chdir.c b/chdir.c index 51595b0..2f6c14a 100644 --- a/chdir.c +++ b/chdir.c @@ -9,7 +9,7 @@ #include "kosh.h" /* the current directory */ -static char cwd[MAX_FN_LEN]; +static char cwd[NAME_MAX]; /* read a pathname based on the current directory and turn it into an abs one, we don't check for validity, or really do anything except handle ..'s and .'s */ @@ -62,10 +62,10 @@ int makeabspath(char *buff, char *path, size_t size) { /* change the current directory (dir is an absolute path for now) */ int kosh_chdir(char *dir) { - char buff[MAX_FN_LEN]; + char buff[NAME_MAX]; - makeabspath(buff, dir, MAX_FN_LEN); - strncpy(cwd, buff, MAX_FN_LEN); + makeabspath(buff, dir, NAME_MAX); + strncpy(cwd, buff, NAME_MAX); fs_chdir(cwd); diff --git a/input.c b/input.c index 1606983..1088490 100644 --- a/input.c +++ b/input.c @@ -36,7 +36,7 @@ void input_oneloop() { /* try to run the command as a builtin */ if (!kosh_builtin_command(argc, argv)) { - /* makeabspath(buff, argv[0], MAX_FN_LEN); */ + /* makeabspath(buff, argv[0], NAME_MAX); */ /* the builtin failed so we try an external */ /* if (process->load_and_exec(buff, argc, argv)) hooks/post-receive -- UNNAMED PROJECT |
From: darcagn <da...@us...> - 2023-06-04 03:19:46
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "UNNAMED PROJECT". The branch, fix-build has been created at 517ac0bde64de887ca0ff9b4de0c92b79b11b665 (commit) - Log ----------------------------------------------------------------- ----------------------------------------------------------------------- hooks/post-receive -- UNNAMED PROJECT |
From: ljsebald <ljs...@us...> - 2023-06-04 01:52:56
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "A pseudo Operating System for the Dreamcast.". The branch, master has been updated via 01124ad934026a6386348426fc3260448c969b4a (commit) via e295ac1ce38183dab7b797d4067b4b06d78224fb (commit) from dfbcd7ee95a047f82db4db8cb29e843cd3c822b9 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- commit 01124ad934026a6386348426fc3260448c969b4a Merge: dfbcd7e e295ac1 Author: Lawrence Sebald <ljs...@us...> Date: Sat Jun 3 21:52:40 2023 -0400 Merge pull request #237 from KallistiOS/bfont-example-fix Fix text encoding issues with video/bfont commit e295ac1ce38183dab7b797d4067b4b06d78224fb Author: darc <da...@pr...> Date: Sat Jun 3 20:49:10 2023 -0500 Fix text encoding issues with video/bfont ----------------------------------------------------------------------- Summary of changes: examples/dreamcast/video/bfont/bfont.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/examples/dreamcast/video/bfont/bfont.c b/examples/dreamcast/video/bfont/bfont.c index effea99..2d4192b 100644 --- a/examples/dreamcast/video/bfont/bfont.c +++ b/examples/dreamcast/video/bfont/bfont.c @@ -28,27 +28,27 @@ int main(int argc, char **argv) { bfont_draw_str(vram_s + o, 640, 1, "Test of basic ASCII"); /* After each string, we'll increment the offset down by one row */ o += 640 * BFONT_HEIGHT; - bfont_draw_str(vram_s + o, 640, 1, "Parlez-vous fran�ais?"); + bfont_draw_str(vram_s + o, 640, 1, "Parlez-vous français?"); o += 640 * BFONT_HEIGHT; /* Do a second set drawn transparently */ bfont_draw_str(vram_s + o, 640, 0, "Test of basic ASCII"); o += 640 * BFONT_HEIGHT; - bfont_draw_str(vram_s + o, 640, 0, "Parlez-vous fran�ais?"); + bfont_draw_str(vram_s + o, 640, 0, "Parlez-vous français?"); o += 640 * BFONT_HEIGHT; /* Test with EUC encoding */ bfont_set_encoding(BFONT_CODE_EUC); - bfont_draw_str(vram_s + o, 640, 1, "�����ˤ�� EUC!"); + bfont_draw_str(vram_s + o, 640, 1, "¤³¤ó¤Ë¤Á¤Ï EUC!"); o += 640 * BFONT_HEIGHT; - bfont_draw_str(vram_s + o, 640, 0, "�����ˤ�� EUC!"); + bfont_draw_str(vram_s + o, 640, 0, "¤³¤ó¤Ë¤Á¤Ï EUC!"); o += 640 * BFONT_HEIGHT; /* Test with Shift-JIS encoding */ bfont_set_encoding(BFONT_CODE_SJIS); - bfont_draw_str(vram_s + o, 640, 1, "�A�h���X�Ï� SJIS"); + bfont_draw_str(vram_s + o, 640, 1, "AhXÏ· SJIS"); o += 640 * BFONT_HEIGHT; - bfont_draw_str(vram_s + o, 640, 0, "�A�h���X�Ï� SJIS"); + bfont_draw_str(vram_s + o, 640, 0, "AhXÏ· SJIS"); o += 640 * BFONT_HEIGHT; /* Drawing the special symbols is a bit convoluted. First we'll draw some hooks/post-receive -- A pseudo Operating System for the Dreamcast. |
From: ljsebald <ljs...@us...> - 2023-06-04 01:51:49
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "A pseudo Operating System for the Dreamcast.". The branch, warnings_fixes has been deleted was 431d85ffcef6ba0fac6546a23df33479d62e22e4 ----------------------------------------------------------------------- 431d85ffcef6ba0fac6546a23df33479d62e22e4 Removed unused #define PACKED from director.h ----------------------------------------------------------------------- hooks/post-receive -- A pseudo Operating System for the Dreamcast. |
From: ljsebald <ljs...@us...> - 2023-06-04 01:51:14
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "A pseudo Operating System for the Dreamcast.". The branch, modem_inline_static has been deleted was a2a758ec3761aaa4dc8315fd9983e24c597d1c83 ----------------------------------------------------------------------- a2a758ec3761aaa4dc8315fd9983e24c597d1c83 Fixed Undefined symbls for modem with -Os builds ----------------------------------------------------------------------- hooks/post-receive -- A pseudo Operating System for the Dreamcast. |
From: ljsebald <ljs...@us...> - 2023-06-04 01:50:20
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "A pseudo Operating System for the Dreamcast.". The branch, ignore_stream has been deleted was e5f18bf58eab10db34ec53af2dd4b3d37009d16d ----------------------------------------------------------------------- e5f18bf58eab10db34ec53af2dd4b3d37009d16d Added ARM driver stream.drv to .gitignore ----------------------------------------------------------------------- hooks/post-receive -- A pseudo Operating System for the Dreamcast. |
From: ljsebald <ljs...@us...> - 2023-06-04 01:49:55
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "A pseudo Operating System for the Dreamcast.". The branch, vmu has been deleted was 3880532748bdaebd8f720d2861d6d4d742975f98 ----------------------------------------------------------------------- 3880532748bdaebd8f720d2861d6d4d742975f98 Merge branch 'vmu' of github.com:gyrovorbis/KallistiOS into vmu ----------------------------------------------------------------------- hooks/post-receive -- A pseudo Operating System for the Dreamcast. |
From: ljsebald <ljs...@us...> - 2023-06-04 01:49:13
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "A pseudo Operating System for the Dreamcast.". The branch, authors_update has been deleted was 71f314048e35084382e7bc04dffb055d129d775f ----------------------------------------------------------------------- 71f314048e35084382e7bc04dffb055d129d775f Updated AUTHORS. ----------------------------------------------------------------------- hooks/post-receive -- A pseudo Operating System for the Dreamcast. |
From: ljsebald <ljs...@us...> - 2023-06-04 01:48:50
|
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "A pseudo Operating System for the Dreamcast.". The branch, init-flags-header has been deleted was b720f3891036040cf7081c01255d7c7fe236eb9d ----------------------------------------------------------------------- b720f3891036040cf7081c01255d7c7fe236eb9d Fix examples that fail to compile due to missing headers. ----------------------------------------------------------------------- hooks/post-receive -- A pseudo Operating System for the Dreamcast. |