Commit Graph

427 Commits

Author SHA1 Message Date
James Benton
4edd7a5901 cafe: Move to autogenerated export files for all cafe libraries. 2018-06-11 15:46:36 +01:00
James Benton
a00804a22d readrpl: Add --exports-def to generate exports.def file for an rpl. 2018-06-11 15:36:21 +01:00
James Benton
0556f4627b cmake: Explicitly set CMAKE_CROSSCOMPILING.
Not actually required because it is implicitly set when you modify
CMAKE_SYSTEM_NAME, but it's nice to be explicit.
2018-06-04 18:09:49 +01:00
James Benton
7019171841 cmake: Set BUILD_SHARED_LIBS OFF.
devkitPPC does not support building shared libraries.
2018-06-04 18:09:10 +01:00
James Benton
01606fba86 wut: Define __WIIU__ and __WUT__ for builds. 2018-06-02 10:37:02 +01:00
James Benton
3c054375db wutstdc++: Fix __wut_key_t. 2018-06-02 10:36:28 +01:00
James Benton
f11112ca0f Change LATTE_SQ_SEL to GX2_SQ_SEL.
latte is private stuff yo.
2018-05-31 11:19:39 +01:00
James Benton
62cb2757b9 wut_add_exports: Use target name when generating exports.
This helps keep the filename unique.
2018-05-31 10:30:58 +01:00
James Benton
3d2e190d31 samples/custom_default_heap: Fix install filename 2018-05-31 10:30:35 +01:00
James Benton
9a0930e5b3 Add install for samples/content. 2018-05-31 10:30:24 +01:00
James Benton
9f5066d75a samples: Add gx2 triangle sample. 2018-05-31 10:20:16 +01:00
James Benton
4e2099a2e4 whb: Add missing GX2Invalidate call.
GX2RUnlockBuffer is supposed to be calling invalidate for us.... but it
does not seem to work and we require an explicit invalidate instead?!?!
2018-05-31 10:10:10 +01:00
James Benton
38ae220cd6 elf2rpl: Simplify fixLoaderVirtualAddresses to only move STRTAB + SYMTAB.
Until we can get ld to give these alloc flags we will always need this.
2018-05-30 22:52:20 +01:00
James Benton
e52affa9d5 elf2rpl: Remove unused functions. 2018-05-30 22:51:51 +01:00
James Benton
6a116a8e41 elf2rpl: Remove reorderSectionIndex.
Not needed.
2018-05-30 22:43:41 +01:00
James Benton
0ef7dcfa32 elf2rpl: Remove fixRoDataFlags.
This is covered by linker script.
2018-05-30 22:42:05 +01:00
James Benton
ae70d3a4a9 elf2rpl: Remove fixSectionAlign.
Not needed.
2018-05-30 22:40:53 +01:00
James Benton
c15e185762 elf2rpl: Remove fixBssNoBits transform.
Not needed since we updated linker script to have (NOLOAD)!
2018-05-30 22:40:41 +01:00
James Benton
00b6fa3940 ld: Add (NOLOAD) to .bss section. 2018-05-30 22:40:20 +01:00
James Benton
1c3d26ab1b wutcrt: Setup a proper stack frame for _start. 2018-05-30 22:13:49 +01:00
James Benton
699aa5ca99 wutcrt: Fix call to __fini_wut instead of __init_wut for rpl on load entry. 2018-05-30 22:00:58 +01:00
James Benton
86ea2f1466 Add a simple .rpl file example. 2018-05-30 21:56:29 +01:00
James Benton
f281be50ab Add support for generating RPL files.
RPL files are shared libraries (like a .dll file), as opposed to the RPX
files which are executables (like a .exe file).

Use rpl_main as defined in dynload.h like one would DllMain on Windows.
2018-05-30 21:56:18 +01:00
James Benton
6f877a2a3c Add new sample custom_default_heap.
Uses exported function __preinit_user which is called by coreinit to
initialise the default heap before the application is loaded.
2018-05-30 19:06:35 +01:00
James Benton
1489adeb37 coreinit: Add MEMVisitAllocatedForExpHeap 2018-05-30 19:05:54 +01:00
James Benton
61a84c50b6 tools: Add rplexportgen to produce SHT_RPL_EXPORTS. 2018-05-30 18:56:10 +01:00
James Benton
c98c7e39e4 elf2rpl: Check relocation section index before performing relocations. 2018-05-30 18:56:10 +01:00
James Benton
419186a31c samples: Never miss a second again! 2018-05-30 18:56:10 +01:00
James Benton
d350e2e28a coreinit: Add a prototype for __preinit_user.
Also throw in CoreInitDefaultHeap whilst we are there, it's the default
implementation of __preinit_user.
2018-05-30 18:56:10 +01:00
James Benton
6d8dabb15b wut.cmake: Update to support creating RPL files, and exports. 2018-05-30 18:56:10 +01:00
James Benton
2ea440c90e elf2rpl: Add flag to toggle whether IS_RPX flag is set in file info. 2018-05-30 18:56:10 +01:00
James Benton
beb72e9859 elf2rpl: Add excmd based command line parsing. 2018-05-30 18:56:08 +01:00
James Benton
e709fe29aa elf2rpl: Add missing newlines to printed messages. 2018-05-30 14:44:14 +01:00
James Benton
4220023511 wutstdc++: Use malloc / free instead of MEM functions. 2018-05-30 14:42:42 +01:00
James Benton
d5effaaf88 coreinit: Cleanup memory heap functions.
Move files to mem*heap.h.
Use MEMHeapHandle everywhere to reduce need for unecessary casts.
Rename types to match the function names better (e.g. Frame -> Frm).
2018-05-30 13:13:37 +01:00
James Benton
42ac732b2e coreinit: Add some memory functions.
Adds OSGetForegroundBucket, OSGetForegroundBucketFreeArea, OSGetMemBound.
2018-05-30 13:11:57 +01:00
James Benton
3e117fe667 coreinit: Merge baseheap.h into memheap.h 2018-05-30 13:11:20 +01:00
James Benton
3c763b7a08 coreinit: Add OSDynLoad_{Get,Set}TLSAllocator. 2018-05-30 13:10:57 +01:00
James Benton
65f03c5e62 coreinit: Add OSDynLoad_Error. 2018-05-30 13:10:38 +01:00
James Benton
524fd9143a coreinit: Add virtual memory mapping functions. 2018-05-29 13:55:10 +01:00
James Benton
5ce21d4fdc rplgen: Fix section flags for dimport section. 2018-05-29 10:52:40 +01:00
James Benton
a5d15a7a3a Remove libdefaultheap.
Replaced by coreinit data exports.
2018-05-29 10:52:40 +01:00
James Benton
766e832363 coreinit: Add default heap data exports. 2018-05-29 10:52:40 +01:00
James Benton
c412250d48 tools/rplgen: Move trim to utils.h 2018-05-29 10:52:40 +01:00
James
1e544d4df5
Update README.md 2018-05-28 11:45:32 +01:00
dibas
45e0904a69 WHBGfx - Separate ClearColor() and allow custom colors. 2018-05-28 11:42:13 +01:00
James Benton
f7a698388c wutnewlib: Implement the new __syscalls from upcoming devkitPPC release. 2018-05-28 11:40:22 +01:00
James Benton
35d05358c4 Fix wut_create_rpx linking to newlib instead of crt. 2018-05-28 11:39:54 +01:00
James Benton
2b165bf887 Improve time conversion macros. 2018-05-28 11:39:36 +01:00
James Benton
23c56959b3 Update README.md 2018-05-27 12:16:44 +01:00