Line 8:
Line 8:
===Libraries===
===Libraries===
Cafe OS applications dynamically link with system libraries to get access to OS services. These OS services include memory management, graphics, audio, and controller input. All libraries are [[RPL|RPL files]], a modification of the standard ELF format with compressed sections and more Windows-like dynamic linking. The main system libraries are listed below, with some having their own pages of documentation:
Cafe OS applications dynamically link with system libraries to get access to OS services. These OS services include memory management, graphics, audio, and controller input. All libraries are [[RPL|RPL files]], a modification of the standard ELF format with compressed sections and more Windows-like dynamic linking. The main system libraries are listed below, with some having their own pages of documentation:
+
*[[avm.rpl]]
+
*[[camera.rpl]] - Gamepad camera
*[[coreinit.rpl]] - Kernel, memory, and FS
*[[coreinit.rpl]] - Kernel, memory, and FS
+
*[[dc.rpl]]
+
*[[dmae.rpl]] - DMA (Direct Memory Access)
+
*[[drmapp.rpl]] - Digital Rights Management
+
*[[erreula.rpl]]
*[[gx2.rpl]] - Graphics
*[[gx2.rpl]] - Graphics
+
*[[h264.rpl]] - Support for H.264
*[[snd_core.rpl]] - Audio
*[[snd_core.rpl]] - Audio
*[[vpad.rpl]] - Gamepad input
*[[vpad.rpl]] - Gamepad input
+
*[[lzma920.rpl]] - LZMA compression
+
*[[mic.rpl]] - Gamepad microphone
+
*[[nfc.rpl]] - low level NFC library
+
*[[nio_prof.rpl]]
+
*[[nlibcurl.rpl]] - libcurl
+
*[[nlibnss.rpl]] - libnss
+
*[[nlibnss2.rpl]]
+
*[[nn_ac.rpl]] - Nintendo Network Auto Connection
+
*[[nn_acp.rpl]]
+
*[[nn_act.rpl]] - Nintendo Network Accounts
+
*[[nn_aoc.rpl]] - Nintendo Network Add-On Content
+
*[[nn_boss.rpl]] - Nintendo Network BOSS (Streetpass)
+
*[[nn_ccr.rpl]]
+
*[[nn_cmpt.rpl]] - Nintendo Network Compatibility ???
+
*[[nn_ec.rpl]] - Nintendo Network E-Commerce
+
*[[nn_fp.rpl]] - Nintendo Network Friend Presence
+
*[[nn_hai.rpl]]
+
*[[nn_hpad.rpl]] - Something related to controllers
+
*[[nn_idbe.rpl]] - Something related to crypto/downloads
+
*[[nn_ndm.rpl]] - Daemons???
+
*[[nn_nets2.rpl]] - More network functions
+
*[[nn_nfp.rpl]] - Nintendo Network Nintendo Figurine Platform (Amiibo)
+
*[[nn_nim.rpl]]
+
*[[nn_olv.rpl]] - Olive/OLV - Miiverse
+
*[[nn_pdm.rpl]] - System Play related data (play times etc.)
+
*[[nn_save.rpl]] - SAVE library
+
*[[nn_sl.rpl]]
+
*[[nn_spm.rpl]] - Storage related functions (USB?)
+
*[[nn_temp.rpl]] - TEMP library (for temporary files)
+
*[[nn_uds.rpl]] - UDS/Local Connection library
+
*[[nn_vctl.rpl]]
+
*[[nsysccr.rpl]]
+
*[[nsyshid.rpl]]
+
*[[nsyskbd.rpl]]
*[[nsysnet.rpl]] - BSD sockets
*[[nsysnet.rpl]] - BSD sockets
+
*[[nsysuhs.rpl]]
+
*[[nsysuvd.rpl]]
+
*[[ntag.rpl]] - NTAG high level NFC library
+
*[[padscore.rpl]]
+
*[[proc_ui.rpl]]
+
*[[snd_core.rpl]]
+
*[[snd_user.rpl]]
+
*[[sndcore2.rpl]]
+
*[[snduser2.rpl]]
+
*[[swkbd.rpl]]
+
*[[sysapp.rpl]]
+
*[[tcl.rpl]]
+
*[[tve.rpl]]
+
*[[uac.rpl]]
+
*[[uac_rpl.rpl]]
+
*[[usb_mic.rpl]]
+
*[[uvc.rpl]]
+
*[[uvd.rpl]]
+
*[[vpad.rpl]]
+
*[[vpadbase.rpl]]
+
*[[zlib125.rpl]]
==Memory Map==
==Memory Map==