32 Commits

Author SHA1 Message Date
someone2639
186699c5c3 remove last modern_gcc reference (#23)
Co-authored-by: someone2639 <someone2639@gmail.com>
2025-10-24 18:30:45 -04:00
CrashOveride95
b742894b55 New and improved make build system and other cleanups (#13)
* Remove unused C versions of gu functions which will conflict with ASM versions under the new build system
This is a holdover from the decomp, as it must support older libultra versions which used these functions; as we're basing this project off of the final 2.0L, they gotta go

* Comment out bugged unused debug code
Will be removed completely by #12 soon enough anyway, but this will break CI if I don't remove this

* C++ fix in ultra64.h

* New build system
Based off my personal "template" featuring makedepend and support for automatically building and installing all 3 library versions, along with colors
Still needs cleanup to make sure I've brought over everything from the previous makefile

* Fix clang_format

* CI fixes to account for the non-decomp build system

* Remove old makefile

* Remove decomp tools

* Accidentally removed format checker

* Change VERSION to TARGET

* Fix install target by removing unused files and bring back ZSort header

* Fix CI typo

* gzsort header removed, I will figure out how to add it in modsdk later

* just copy the whole PR folder instead and remove install.mk, unnecessary

* SDK installation shall be handled seperately

* Remove RMON and a few leftover KMC things

* Remove MODERN_CC, as everyone is gonna be building this on a modern compiler anyway
2025-08-23 22:58:24 -04:00
someone2639
01fa771093 Make Version 2.0L the only build (#6)
* Strike Version L

* for includes too

* format

* include format

* remove I J and K base files

* flatten folder

* only build libgultra

* clarify the new MGU switch

* flatten build folder

* remove stray #line

* address review

* and format

---------

Co-authored-by: someone2639 <someone2639@gmail.com>
2025-02-18 16:25:18 -05:00
someone2639
efbd931cbc Set up Makefile for modern building (#1)
* set build options

* remove COMPARE and MDOERN_* switches

* remove tools makefile

* AR patching is gone too since we want a fullly decomped version

* AR is modern

* remove cwd changes

* edit my own tool to fix compile errors

* compile files generated with my own tool instead of the originals

* inline modern_gcc makefile

* port mips toolchain detection logic

* add util.mk for find-command

* remove forced AR order and strip/mdebug removal commands

* add -mabi=32 to as flags

---------

Co-authored-by: someone2639 <someone2639@gmail.com>
2025-02-17 11:28:31 -05:00
Derek Hensley
80056b4961 FIXUPS -> MODERN_LD (#92) 2024-11-29 01:40:28 +09:00
Derek Hensley
6e9175b807 Modern GCC (#88)
* Add modern gcc makefile

* Add MODERN define to actually be able to build

* Better modern gcc builds

Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>
Co-authored-by: cadmic <cadmic24@gmail.com>

* Warnings

* MODERN_CC

* OPTFLAGS

* no-strict-aliasing

---------

Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>
Co-authored-by: cadmic <cadmic24@gmail.com>
2024-08-22 10:29:10 -06:00
cadmic
bf1f007dc7 Don't hardcode version IDs in Makefile (#86) 2024-08-19 23:54:22 -04:00
cadmic
b755039f49 Use $(CROSS)ar instead of host ar (#83) 2024-08-18 22:28:41 -04:00
Derek Hensley
0c679b24b0 Makefile Improvements (#81)
* Include WORKING_DIR in CC so can call compiler with just CC not WORKING_DIR/CC

* Move makefiles (except the main one) to a makefiles folder to keep root cleaner

* Set compiler based on target, and use that to set proper makefile

* .mk file extension

* Use AS for assembly files instead of CC
2024-07-07 13:56:41 -07:00
Derek Hensley
5e8f8f0308 Specify COMPILER_DIR (#67)
* SJIS makefile recipe

* Use COMPILER_DIR instead of second recipe
2024-06-03 20:36:40 -07:00
Derek Hensley
299d7faf87 Makefile Cleanup (#64)
* Remove mdebug from COMPARE=0 archives

* Remove ASM_DIRS

* FIXUPS

* Remove asm directories

* move update marker file comment

* Add FIXUPS to README
2024-02-24 17:50:26 -08:00
Derek Hensley
6c1f3067a1 Add ability to build without needing the original archive (#58)
* Add ability to build without comparing to original

* Remove CFLAGS += -DNON_MATCHING

* Order matters

* Comment

* PR

* PR comments
2024-01-07 18:25:26 -08:00
Mr-Wiseguy
261bdb81c1 Fix monutil not getting built (#59) 2024-01-07 01:15:08 -05:00
Mr-Wiseguy
2ab125a5f3 Matched 2.0I and 2.0J, fixed matched object count calculation (#53)
* Matched 2.0I and 2.0J, fixed matched object count calculation

* Update version checkbox matrix

* Mark irix 2.0H as N/A in the checkbox matrix since it's not available

* Address PR comments

* Changed tab to spaces on new files

* Converted tabs to spaces in other changes, fixed os_motor.h definitions
2023-09-02 23:17:04 -04:00
Mr-Wiseguy
7b04a39156 Add support for multiple versions, match current archives under 2.0K (#52)
* Initial pass at multi-version support, matched 2.0K

* Fixed CI and made it build K, changed default version back to L

* Fixed VERSION_DEFINE not being used after rebase

* Update checkbox matrix for 2.0K

* Update readme instructions, fix ido CI

* Fix NON_MATCHING and document it in the readme

* Change default version to L, fix clean removing all builds, made distclean remove all builds, allow running clean and distclean without setup

* Made build and extracted paths match the base path format, remove unnecessary file compilation flag setting
2023-08-31 10:38:15 -04:00
Derek Hensley
b376559296 Irix support (libultra_rom/libultra OK) (#44)
* WIP

* Add ar

* POC

* WIP libultra_rom

* Simplify Makefile and match initalize

* 1 c 1 s left

* exceptasm OK

* Different weak impl

* COMPARE_AR comment for irix

* Get ar working and clean up makefile

* Some more small cleanup

* Split makefile

* dereference instead of [0]

* Small cleanups

* initialize msp and kmc libultra

* libultra_rom OK

* Warnings

* Add to readme

* Fix ido ci?

* Make libultra_rom default again

* PR review

* libultra OK

* Update Readme

* whitespace removal

* Small exceptasm clean up

* Asm symbols

* Bring over improved asm.h

* build improvements

* asm PR suggestions

* Make comment

* Fix readme table

* strip debug on setup

* GBIDEFINEs
2023-06-27 17:58:03 -07:00
Mr-Wiseguy
0417857a2c Match libgultra_d.a and libgultra.a (#36)
* Begin stages of _d

* Match audio

* Match ldiv

* match llbit

* Match string.c (memcpy matched by wiseguy)

* match syncprintf

* Match flash code and skip libc X files (will do later)

* fix flash formatting and match some voice files

* More voice files

* More voice progress

* voice finish

* Match ai and sched

* Match aisetfreq (done by Tharo) and a few more

* match eep read/write

* more io files

* match epi

* Match gbpak and motor

* PFS mostly matched

* Match PI

* Match SI

* Match SP code

* Match VI code

* Fix alignment

* Match RG

* Fix exceptasm

* parse_gbi fix

* OS part 1

* Fix conflict

* Fix some bugs

* More files

* more matching

* Almost there

* begin some libultra_d code

* add delay

* Match timerintr

* fix for merge

* match logfloat

* printregion match

* log OK

* profile OK

* commonerror OK, plus small cleanups in profile and log

* small cleanup of commonerror

* Start

* Small cleanup

* Defines for constants and other cleanup (#1)

* Integrated fakechroot to match file paths for monutil

* Added generation of symlink to /bin for the chroot

* Matched monutil (#2)

* Added support for libgultra.a building

* Matched profile for libgultra.a

* Fixed host_ptn64 symtab diff, better support for building different versions

* finish libgultra_d (#33)

* finish libgultra_d

* clean up some old comments

* IDO recomp redirect (#35)

* Updates for patched ido

* Some clean up

* new line

* Update table to reflect that libgultra.a and libgultra_d.a are matched

* Change default target to libgultra_rom

* Replaced some magic numbers with defines, removed binlink

* Added explicit alignment to any implicitly aligned variables (#37)

* newlines

* profile cleanup

* va_end

* formating

* WAIT_ON_IOBUSY

* OS_VI_SPECIAL_MAX

* Ido download latest

* yeet useless __assertBreak

* Enable ci for all L libgultra

* Fix NULL syntax

* osViGetCurrentFramebuffer

* Format (#40)

* format

* file modes

* logfloat

* Fix wrong permisions

* left*

* Cleanups

* Missed an rdb.h

* newlines

---------

Co-authored-by: CrashOveride95 <crashoveride953@gmail.com>
Co-authored-by: CrashOveride95 <40003130+CrashOveride95@users.noreply.github.com>
Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>
Co-authored-by: pixel-stuck <mathmcclintic@gmail.com>
2023-04-02 19:12:00 -07:00
Tharo
c4ff4aeb0a Thread profiler, host files, gio files for libgultra_d (#26)
* Thread profiler, host files, gio files

* Wrap readhost.c and writehost.c files in #ifndef _FINALROM
2022-05-14 09:04:16 -04:00
Tharo
376e090299 rmon files, initialize files, kdebugserver.c, initrdb.c for libgultra_d (#25) 2022-03-25 22:07:30 -04:00
Tharo
b0f391fafa Matched exceptasm.s for libgultra_d (#24) 2022-03-18 18:49:50 -04:00
someone2639
5775c6372d osVoice decomp (#15) 2022-03-15 16:44:54 -04:00
Mr-Wiseguy
14e524ffec Matched controller and transfer pak (gbpak) files (#19)
* Matched controller and transfer pak (gbpak) files

* Symbolized many magic numbers in controller code

* Added newline to the end of controller.c
2022-03-10 02:54:20 +09:00
Mr-Wiseguy
1292d8ada6 Added and matched all source-available files, updated headers to 2.0L (#16) 2022-03-05 00:49:08 +09:00
Mr-Wiseguy
b6fdd9a6a4 Replaced kmc gcc wrapper with native gcc 2.7 and binutils 2.6 builds 2022-02-03 15:27:53 -05:00
Mr-Wiseguy
4e1b9fb614 Matched RSP (os/sp), region (rg), and libc C files (#11) 2021-12-26 19:34:30 -05:00