Commit graph

64 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
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
Falco Girgis
b1b225b345 Added basic settings.ini saving to Miami. 2025-03-29 22:53:49 -05:00
Stefanos Kornilios Mitsis Poiitidis
0657700e11 Merge branch 'falco/collision_sh4_accel_phase1' into 'main'
Some checks are pending
re3 conan+cmake / build-cmake (openal, glfw, macos-latest, gl3) (push) Waiting to run
re3 conan+cmake / build-cmake (openal, glfw, ubuntu-18.04, gl3) (push) Waiting to run
re3 conan+cmake / build-cmake (openal, glfw, windows-latest, gl3) (push) Waiting to run
re3 conan+cmake / build-cmake (openal, windows-latest, d3d9) (push) Waiting to run
re3 cmake devkitA64 (Nintendo Switch) / build-nintendo-switch (push) Waiting to run
re3 premake amd64 / build (Debug, win-amd64-librw_d3d9-oal) (push) Waiting to run
re3 premake amd64 / build (Debug, win-amd64-librw_gl3_glfw-oal) (push) Waiting to run
re3 premake amd64 / build (Release, win-amd64-librw_d3d9-oal) (push) Waiting to run
re3 premake amd64 / build (Release, win-amd64-librw_gl3_glfw-oal) (push) Waiting to run
re3 premake x86 / build (Debug, win-x86-librw_d3d9-mss) (push) Waiting to run
re3 premake x86 / build (Debug, win-x86-librw_d3d9-oal) (push) Waiting to run
re3 premake x86 / build (Debug, win-x86-librw_gl3_glfw-mss) (push) Waiting to run
re3 premake x86 / build (Debug, win-x86-librw_gl3_glfw-oal) (push) Waiting to run
re3 premake x86 / build (Release, win-x86-librw_d3d9-mss) (push) Waiting to run
re3 premake x86 / build (Release, win-x86-librw_d3d9-oal) (push) Waiting to run
re3 premake x86 / build (Release, win-x86-librw_gl3_glfw-mss) (push) Waiting to run
re3 premake x86 / build (Release, win-x86-librw_gl3_glfw-oal) (push) Waiting to run
re3 premake x86 / build (Vanilla, win-x86-librw_d3d9-mss) (push) Waiting to run
re3 premake x86 / build (Vanilla, win-x86-librw_d3d9-oal) (push) Waiting to run
re3 premake x86 / build (Vanilla, win-x86-librw_gl3_glfw-mss) (push) Waiting to run
re3 premake x86 / build (Vanilla, win-x86-librw_gl3_glfw-oal) (push) Waiting to run
Collision Acceleration Part 1

See merge request skmp/dca3-game!77
2025-03-29 09:23:31 +00:00
NaiSan89
aa115cdbf6 Updating images size to 256x256. 2025-03-28 08:58:30 -03:00
Falco Girgis
0ba1c595cd Acceleration working in miami. 2025-03-28 00:17:25 -05: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
b739b89fd6 Fixing issues with previous merge. 2025-03-16 12:57:52 -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
c70dce8a6e Merge branch 'skmp/ph3nom-miami-saves-working' into 'main'
miami: Game Save + Load From VMU

See merge request skmp/dca3-game!44
2025-03-10 21:48:45 +00:00
Stefanos Kornilios Mitsis Poiitidis
776cec9875 Add built in save in slot 8, disable FIX_INCOMPATIBLE_SAVES, other fixes 2025-03-10 23:33:13 +02:00
Josh Pearson
76a45804d8 Add "mono" option for audio repack via FOR_DISC=2
For "miami" branch creates a 1.5GB CDI wiithout downsampling audio frequency
2025-03-10 22:36:39 +02:00
Stefanos Kornilios Mitsis Poiitidis
6156059b71 col repack for liberty 2025-03-09 22:52:14 +02:00
Stefanos Kornilios Mitsis Poiitidis
2cf593a0a9 repack col files, remove use of (unused) peds.col 2025-03-09 22:39:04 +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
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
8a34a29d2e correctly build animtool 2025-03-09 20:05:15 +02:00
Stefanos Kornilios Mitsis Poiitidis
f6cc9c6995 base code from last week 2025-03-09 15:18:58 +02:00
Stefanos Kornilios Mitsis Poiitidis
4042409312 Add TXD_OPTS_LOADSC2 2025-03-09 15:04:41 +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
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
60bbd0b782 Working miami build, not repack yet 2025-03-09 13:02:48 +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
Stefanos Kornilios Mitsis Poiitidis
6339889183 Move files around 2025-03-09 12:28:55 +02:00
Stefanos Kornilios Mitsis Poiitidis
0234e3db43 Sniper fix for miami 2025-03-09 12:18:32 +02:00
Stefanos Kornilios Mitsis Poiitidis
ae471ef6f1 HACK: Stub out law_1b cus it is too big for 16 megs dc 2025-03-09 12:18:32 +02:00
Stefanos Kornilios Mitsis Poiitidis
46c076d0c4 Fix memory accounting for cols and ifps 2025-03-09 12:18:32 +02:00
Stefanos Kornilios Mitsis Poiitidis
77a40646ba make radar waypoint argb4444 2025-03-09 12:18:32 +02:00
Stefanos Kornilios Mitsis Poiitidis
badbe0a6ea skip ./ on relative paths 2025-03-09 12:18:32 +02:00
Stefanos Kornilios Mitsis Poiitidis
794f80498c Fix Horizon 2025-03-09 12:18:32 +02:00
Stefanos Kornilios Mitsis Poiitidis
0a90f1fc49 PreloadStreamedFile: stop if playing 2025-03-09 12:18:32 +02:00
Stefanos Kornilios Mitsis Poiitidis
aa039ac849 fix sim build 2025-03-09 12:18:32 +02:00
Stefanos Kornilios Mitsis Poiitidis
1fc867978a Fix animations from animation compression 2025-03-09 12:18:32 +02:00
Stefanos Kornilios Mitsis Poiitidis
de51f178a4 sampman_dc: reduce read staging to 16k to ease OOMs 2025-03-09 12:18:32 +02:00
Stefanos Kornilios Mitsis Poiitidis
47552eed0d Add MissionAudio 2025-03-09 12:18:32 +02:00
Stefanos Kornilios Mitsis Poiitidis
c2a59a76f8 enable cloking-off-aica now that aica is initialized 2025-03-09 12:18:32 +02:00
Stefanos Kornilios Mitsis Poiitidis
defd5f6bff Initial audio support 2025-03-09 12:18:32 +02:00
Stefanos Kornilios Mitsis Poiitidis
c975da266a Fix GetLookLeft 2025-03-09 12:18:32 +02:00