Commit graph

31 commits

Author SHA1 Message Date
Falco Girgis
4d13e821b5 Liberty/Miami Perf Gainz Phase 3
1) synced dca3-kos repo which has some gainzy commits
2) rwdc_common.h
    - all low-level and matrix/vector routines for SH4 are now shared in
      this common file, included in both RW and Liberty/Miami engines
3) CMatrix
    a. assignment operator: now uses asm-optimized mat_copy()
    b. multiplication operator: now use mat_mult() SH4 routine
    c. Scale(): applies a scale matrix via mat_scale
    d. MultiplyInverse: fipr-optimizations
4) CQuaternion
    a. multiplication: SH4 ASM FIPR optimized
    b. Get(V3d& axis, float &angle): fast inversion/division
    c. Set(RWMatrix&): fast division
5) CVector
    a. Multiply3x3() now accelerated with mat_transpose
5) RwQuat
    a. mult(): FIPR accelerated
    b. length(): FIPR/FSRRA accelerated
2025-04-15 12:06:12 -05:00
MastaG
6dc8ed77bc Add a "dsiso-prebuilt" target
This way DreamShell users can easily build and test using prebuilt elf binaries.
2025-03-31 15:05:06 +02:00
Stefanos Kornilios Mitsis Poiitidis
d83ae53746 Fix liberty 0GDTEX rule 2025-03-30 12:16:45 +03:00
Falco Girgis
5914842483 Addressed review feedback. 2025-03-30 03:54:01 -05:00
Falco Girgis
a6facaec30 Merge branch 'thegang/vmu-icons' into falco/miami_settings_saving 2025-03-30 01:01:19 -05:00
Stefanos Kornilios Mitsis Poiitidis
62dbf132c1 liberty: now uses ../../liberty and ../../liberty_mod for source assets 2025-03-29 16:45:00 +02:00
Stefanos Kornilios Mitsis Poiitidis
a3a610d8ee liberty: remove menu map as it leads to texoom 2025-03-28 22:17:53 +02:00
NaiSan89
aa115cdbf6 Updating images size to 256x256. 2025-03-28 08:58:30 -03:00
Stefanos Kornilios Mitsis Poiitidis
325f903186 Revert "Merge branch 'skmp/fix-makefile-cases' into 'main'"
This reverts merge request !75
2025-03-26 07:24:47 +00:00
Stefanos Kornilios Mitsis Poiitidis
5e690010fd Make Audio stream path case insensitive 2025-03-25 20:58:26 +02:00
Stefanos Kornilios Mitsis Poiitidis
3d176a239a Add 0GDTEX.PVRs 2025-03-25 20:39:07 +02:00
Falco Girgis
fd7f44e7c2 Adjusted Makefile to only care about settings.ico. 2025-03-16 13:02:19 -05:00
Falco Girgis
6bd5a124cd Forgot to add actual icon. 2025-03-16 12:59:53 -05:00
Falco Girgis
6d67dc2ffd Merge remote-tracking branch 'origin/main' into HEAD 2025-03-16 12:49:21 -05:00
Falco Girgis
2365fe663b Working saving, not loading. 2025-03-16 10:23:55 -05:00
Stefanos Kornilios Mitsis Poiitidis
c0e7ddef84 Merge branch 'falco/thread_attributes' into 'main'
Gave threads default attributes for RAM gainz.

See merge request skmp/dca3-game!63
2025-03-16 14:54:04 +00:00
Falco Girgis
bddbc89da1 Added -fno-PIC to liberty and miami builds.
By default with GCC SH, position-independent code is generated.
Supposedly this can be less-performant (although the extent to which it
is on SH4 is debatable). It also has to produce larger binaries due to
offsets in the .text segment.

Added -fno-PIC flag to miami and liberty Makefiles. Binary size dropped
by over 8KB. Performance looks the same. Don't forget to add this when
building KOS too for best results.
2025-03-15 20:02:23 -05:00
Falco Girgis
9c64ecf8f3 Gave threads default attributes for RAM gainz.
Threads for sampman and the VMU profiler were created just using
std::thread from C++11, which doesn't allow for configuration of its
stack size or label.

Wrote a small wrapper around KOS threads (and std::threads as fallback)
which takes arguments for configuring thread label, stack size, and
whether to detach it.

1) Added common/thread/thread.h/.c thread abstraction layer.
2) Updated Makefiles
3) VmuProfiler
    - averages only 10 frames now, which is avg FPS over a second
    - subclasses dc::Thread and only has a 2KB stack now
    - got a label for thread dumps
4) Sampman (liberty/miami)
    - now uses dc::Thread
    - now only needs 2KB stack size
    - got a label for thread dumps
2025-03-15 18:48:50 -05:00
Stefanos Kornilios Mitsis Poiitidis
aac6ad73e6 add missing miami gamefiles/gxts, repack gamefiles 2025-03-12 01:16:08 +02:00
Stefanos Kornilios Mitsis Poiitidis
3ab8061980 Pack stream lengths to a .bin file so we don't have to open them all on startup 2025-03-11 19:32:29 +02:00
Stefanos Kornilios Mitsis Poiitidis
53e759e55e Add FOR_DISC=2 for liberty 2025-03-10 22:43:06 +02:00
Stefanos Kornilios Mitsis Poiitidis
6156059b71 col repack for liberty 2025-03-09 22:52:14 +02:00
Stefanos Kornilios Mitsis Poiitidis
3073b24cd9 Merge branch 'skmp/anim-compress' into 'main'
Anim Dleta Compression

See merge request skmp/dca3-game!34
2025-03-09 20:34:54 +00:00
Stefanos Kornilios Mitsis Poiitidis
ab9fa95512 liberty: Delta Compressed Animations 2025-03-09 21:38:45 +02:00
Stefanos Kornilios Mitsis Poiitidis
2035daa9fb Shorten Product Number / Disc Serial, fix O3 and no-fast-math objects 2025-03-09 20:09:24 +02:00
Stefanos Kornilios Mitsis Poiitidis
43edb61c32 Fix liberty and miami repacks, gitignore 2025-03-09 14:37:37 +02:00
Stefanos Kornilios Mitsis Poiitidis
e616d3cd33 build and CI fixes 2025-03-09 13:58:55 +02:00
Stefanos Kornilios Mitsis Poiitidis
1ebde24d6a fix texconv, pvrtex builds 2025-03-09 13:42:19 +02:00
Stefanos Kornilios Mitsis Poiitidis
df49ea88a3 Update gitignore, ci, working main and sim builds 2025-03-09 13:33:04 +02:00
Stefanos Kornilios Mitsis Poiitidis
2a10df3326 Move files around 2025-03-09 12:41:23 +02:00
Stefanos Kornilios Mitsis Poiitidis
52ab6d6f0c Move files around 2025-03-09 12:38:13 +02:00