Commit Graph

440 Commits

Author SHA1 Message Date
James Benton
1471ea4338 Change wutnewlib to implement malloc family of functions.
This allows us to forward them straight to default heap functions, this
is better than having to allocate a fixed heap for sbrk as it allows
people to better mix usage malloc & default heap functions.
2018-06-13 18:38:53 +01:00
James Benton
c4214cef35 sysapp: Change unknown structure to a struct typedef. 2018-06-13 17:36:12 +01:00
James Benton
76c6e555d0 Update .gitignore 2018-06-13 17:35:50 +01:00
James Benton
4026ad081a samples: Rename helloworld_std_thread to helloworld_cpp. 2018-06-13 17:35:03 +01:00
James Benton
adfd1c4e91 Fix nn/ac.h including removed header. 2018-06-13 13:39:42 +01:00
James Benton
865af4609c Rename wutdevoptab to wutdevoptab_sd 2018-06-13 13:36:15 +01:00
James Benton
c2a993a4dd samples: Add swkbd sample. 2018-06-13 12:14:11 +01:00
James Benton
75784dbb52 Add nn::swkbd library. 2018-06-13 12:12:22 +01:00
James Benton
9beff5dd0b Add padscore/kpad.h for a stubbed KPADStatus typedef. 2018-06-13 12:11:00 +01:00
James Benton
060d9df5cb Update linker script to include all fimport & dimport sections. 2018-06-13 12:10:27 +01:00
James Benton
dc29e49a13 Fix nn/ac.h includes. 2018-06-13 12:10:15 +01:00
James Benton
2770867c97 nn_ac: Move to nn/ac and start the C++ API. 2018-06-11 17:34:05 +01:00
James Benton
2d0db54e65 elf2rpl: Bump up cafe SDK version in file info sections.
Matches latest SDK version.
2018-06-11 16:46:35 +01:00
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