Commit Graph

823 Commits

Author SHA1 Message Date
Steven Smith
65eaba5b2d Add news:s support. 2015-11-08 13:26:29 -08:00
Steven Smith
891df76804 Fix #139 2015-11-08 12:00:33 -08:00
Steven Smith
abdfec701f Fix MIC cutting off a second of audio. 2015-11-08 11:24:04 -08:00
fincs
7440ca7901 Merge pull request #205 from Steveice10/great-refactor
Rewrite MIC service code, clean up microphone example.
2015-11-08 00:22:47 +01:00
yellows8
fcb370a8c1 Implemented FSUSER_GetProductInfo. 2015-11-07 17:35:54 -05:00
Steven Smith
d2f772c960 Rewrite MIC service code, clean up microphone example. 2015-11-07 08:57:48 -08:00
fincs
3aa4bdf6e9 Fix #206 2015-11-07 12:46:24 +01:00
fincs
24a84a874f Fix some mistakes in 2797540a 2015-11-07 01:52:35 +01:00
fincs
2797540a3d Revise most services to follow these guidelines:
- Each service must have xyzInit/xyzExit (with that name)
- xyzInit/xyzExit use reference counting
- xyzExit returns void
- The utilities in <3ds/result.h> are used instead of manual error checking
- The intrinsics in <3ds/synchronization.h> are used instead of inline asm
- Other miscellaneous changes
  - APT now uses a lightweight lock instead of a mutex
  - Initial handle parameters in PTMU were killed
  - Explicit init'ion to 0 or NULL has been removed for global variables
    since they end up on .bss anyway
  - MIC hasn't been touched because it must be rewritten first
  - CFGNOR needs a slight touch before converting
  - SOC is still to be cleaned up
2015-11-07 01:25:31 +01:00
fincs
e01dfbc392 synchronization.h: Add DSB & several atomic operations 2015-11-07 01:07:11 +01:00
fincs
7b25a0d4d4 Add <3ds/result.h> header - 3DS result codes 2015-11-07 01:04:31 +01:00
fincs
2686b57c88 Fix #204 2015-11-06 20:39:41 +01:00
fincs
b33b4eb2d0 Minor cleanup in os.h/os.c + add osGet3DSliderState() 2015-11-05 12:33:43 +01:00
fincs
2ce51cf3d8 Add more (void) and remove more service handle parameters 2015-11-05 11:48:23 +01:00
fincs
e4775572c2 Merge branch 'master' into great-refactor
# Conflicts:
#	libctru/include/3ds/services/httpc.h
2015-11-01 14:14:01 +01:00
fincs
6b40ea9d8e Roll out a new libctru build 2015-11-01 13:59:34 +01:00
yellows8
27469de3c1 Removed an unused debug line in httpc.c. Set the httpc servhandle to zero in httpcExit(), this fixes using httpcInit() after httpcExit(). Fixed the use_defaultproxy comment in httpc.h. 2015-10-29 15:21:08 -04:00
fincs
7914b41107 Merge branch 'master' into great-refactor 2015-10-28 13:34:17 +01:00
fincs
9360cd6a7d Merge pull request #158 from Lectem/patch-1
Protocol numbers and sockopt IP level
2015-10-28 13:18:37 +01:00
yellows8
76e47c02c8 Changed gfxSwapBuffers() to gfxSwapBuffersGpu() in consoleInit(). This fixes the black-screen issue with the text-console on certain systems(such as old3ds v9.0-v9.2). 2015-10-27 19:34:07 -04:00
smea
af34e85ab2 added support for other cfg service names 2015-10-27 10:59:52 -07:00
fincs
6bdfa1a005 aptInit(): Wait for APT_RUNNING (solves certain timing problems) 2015-10-26 21:19:00 +01:00
fincs
f362ae62a0 More NDSP wavebuf queue fixes 2015-10-24 21:56:40 +02:00
fincs
a35abcb901 APT: fix status event issue that breaks things under certain circumstances 2015-10-24 13:48:15 +02:00
fincs
8cc5dec1b2 NDSP: some more safety checks and fixes 2015-10-24 13:47:31 +02:00
fincs
b3e6a64596 Really really fix NDSP wavebuf scheduling, this time for real 2015-10-24 01:47:23 +02:00
fincs
28f73801cc Really fix NDSP wavebuf scheduling 2015-10-24 01:05:23 +02:00
fincs
ebad126fc0 Fix NDSP wavebuf synchronization issue (thanks to Lectem) 2015-10-24 00:54:57 +02:00
Lectem
15bca44322 Added the missing struct and functions 2015-10-21 22:12:38 -04:00
smea
89fc70f076 fixed bug which caused gsp shared mem to never be unmapped when using gfx 2015-10-20 23:03:49 -07:00
smea
bba6b90ba0 fixed bug which caused gsp shared mem to never be unmapped when using gfx 2015-10-20 23:03:03 -07:00
fincs
07d5367ed4 Some additions to NDSP code (thanks to Lectem) 2015-10-18 23:06:11 +02:00
fincs
e12c8ff6a6 Add code to manage New 3DS CPU speedup
# Conflicts:
#	libctru/include/3ds/os.h
#	libctru/include/3ds/services/ptm.h
2015-10-11 23:47:23 +02:00
fincs
942ec4af9b Add code to manage New 3DS CPU speedup 2015-10-11 23:44:10 +02:00
fincs
3cb20a965b Do not include the source folder in Doxygen, tidy up README.md 2015-10-10 02:04:16 +02:00
fincs
839289378b Remove Doxygen version tag due to generated files being changed for every single commit 2015-10-10 01:56:39 +02:00
Lectem
f14d5721eb Document the loop behaviour of csndPlaySound 2015-10-09 19:41:29 -04:00
fincs
b5009a3430 Merge branch 'great-refactor' of github.com:smealum/ctrulib into great-refactor 2015-10-10 00:13:42 +02:00
fincs
818cd4ac39 Merge remote-tracking branch 'Lectem/travis_ci' into great-refactor 2015-10-10 00:10:17 +02:00
Lectem
5f648ff9d4 add commit number and readme.md to doc 2015-10-09 17:58:42 -04:00
Lectem
be64a95c74 Added INADDR_LOOPBACK define 2015-10-09 13:37:01 -04:00
Steven Smith
a5ad20cc46 Fix DSP_SendData writing the value to the wrong index. 2015-10-08 23:04:13 -07:00
Antoine Vugliano
b46e0c6a15 Fix NDSP enums for C++. 2015-10-08 00:43:58 +02:00
fincs
c25e04295a Clean up svc.s 2015-10-07 23:32:20 +02:00
fincs
506d9205f3 Merge pull request #189 from Lectem/fix_cpp
fixed enums for c++
2015-10-07 22:03:08 +02:00
Lectem
13adb6a1c2 fixed enums for c++ 2015-10-07 16:00:19 -04:00
fincs
141703b4ee Fix potential race condition in LightLock_Unlock() (spotted by mtheall) 2015-10-07 21:48:26 +02:00
Lectem
70e7fb35bc fix SOL_SOCKET level options 2015-10-07 15:23:24 -04:00
fincs
0e7755af01 Fix GPUCMD_AddSingleParam() C++ compatibility issue 2015-10-07 20:50:57 +02:00
Lectem
1a24e0e054 fixed some netinet/in.h formating 2015-10-06 12:53:29 -04:00
Lectem
034a27adaa Protocol numbers and sockopt options
Protocol numbers are based on both RFC 1700 p.7 and the Internet Assigned Numbers Authority (IANA) http://www.iana.org/assignments/protocol-numbers/protocol-numbers.xhtml

Those are to be used with the added sockopt options. The various options have been
tested with wireshark.
2015-10-06 11:13:29 -04:00
fincs
56a2712501 Docufixes 2015-10-06 11:47:28 +02:00
fincs
d9c133d28a Merge pull request #186 from Steveice10/docs
Finish up basic documentation.
2015-10-06 11:26:37 +02:00
Lectem
e6dd7ac37d do not include internal structs in doc 2015-10-05 23:00:24 -04:00
Steven Smith
fa5f3783ce Finish up basic documentation. 2015-10-05 18:35:15 -07:00
fincs
f4cef43033 Whoops 2015-10-05 11:40:20 +02:00
fincs
66396c5777 Merge branch 'master' into great-refactor 2015-10-05 11:39:11 +02:00
Steven Smith
173d386795 Document most of services. 2015-10-04 22:27:43 -07:00
Lectem
83d78a0f7c Allow documentation for static functions
This will show static functions such as the ones in the ipc.h header in the documentation.
2015-10-04 18:55:07 -04:00
Steven Smith
d6962f2122 Doc consistency. 2015-10-04 14:08:02 -07:00
Steven Smith
2656225392 Finish documentation in include/3ds and include/3ds/util. 2015-10-04 13:48:26 -07:00
Steven Smith
9a3baad7ed Rewrite most documentation to be consistent in format. 2015-10-04 10:37:28 -07:00
fincs
b481e6a446 Merge branch 'master' into great-refactor
Conflicts:
	libctru/include/3ds/services/hid.h
	libctru/include/3ds/services/irrst.h
2015-10-04 17:37:19 +02:00
Steven Smith
9fe9493701 Dynamically allocate shared memory. 2015-10-04 08:03:23 -07:00
fincs
8e052004d5 Merge branch 'master' into great-refactor
Conflicts:
	libctru/include/3ds/services/gsp.h
	libctru/source/services/gsp.c
2015-10-03 18:46:04 +02:00
fincs
5c7273ef3b Merge pull request #176 from thedax/gspLcd
Implement some services from gsp::Lcd.
2015-10-03 18:42:50 +02:00
profi200
b9f7f74b58 Renamed TitleList to AM_TitleEntry. 2015-10-03 18:37:47 +02:00
fincs
5788134dc5 Fix broken srv code 2015-10-03 13:41:08 +02:00
Lectem
a117a287fd Use IPC helpers for srv 2015-10-03 07:23:33 -04:00
Lectem
123d8c6d6e Use IPC helpers for y2r 2015-10-03 06:59:19 -04:00
Lectem
deb7518153 Use IPC helpers for soc 2015-10-03 06:59:17 -04:00
Lectem
fa06930406 Use IPC helpers for qtm 2015-10-03 06:59:15 -04:00
Lectem
362a3fce41 Use IPC helpers for ptm 2015-10-03 06:59:13 -04:00
Lectem
64b32816cf Use IPC helpers for ps 2015-10-03 06:59:11 -04:00
Lectem
8dd1bbb0ce Use IPC helpers for pm 2015-10-03 06:59:10 -04:00
Lectem
d97d5f26a4 Use IPC helpers for ns 2015-10-03 06:59:08 -04:00
Lectem
04dd31220c Use IPC helpers for news 2015-10-03 06:59:06 -04:00
Lectem
63f7918868 Use IPC helpers for mvd 2015-10-03 06:59:04 -04:00
Lectem
1863bc2e35 Use IPC helpers for mic 2015-10-03 06:59:02 -04:00
Lectem
a65ae90b36 Use IPC helpers for irrst 2015-10-03 06:59:00 -04:00
Lectem
8f00d34099 Use IPC helpers for ir 2015-10-03 06:58:58 -04:00
Lectem
8975e848d7 Use IPC helpers for httpc 2015-10-03 06:58:56 -04:00
Lectem
44d9f0e940 Use IPC helpers for hid 2015-10-03 06:58:54 -04:00
Lectem
db9d0a69eb Use IPC helpers for hb 2015-10-03 06:58:52 -04:00
Lectem
5e6440b9b7 Use IPC helpers for fs 2015-10-03 06:58:43 -04:00
Lectem
d074d819ff Use IPC helpers for csnd 2015-10-03 06:56:26 -04:00
Lectem
375f5e497d Use IPC helpers for cfgu 2015-10-03 06:56:24 -04:00
Lectem
383acf6575 Use IPC helpers for cfgnor 2015-10-03 06:56:22 -04:00
Lectem
bc3ef580b2 Use IPC helpers for apt, and update some commands 2015-10-03 06:56:11 -04:00
Lectem
b9d51cbd87 Use IPC helpers for am 2015-10-03 06:43:47 -04:00
Lectem
1c002fc034 Use IPC helpers for ac 2015-10-03 06:43:45 -04:00
fincs
8912773f21 Merge branch 'master' into great-refactor
Conflicts:
	libctru/include/3ds/services/apt.h
	libctru/include/3ds/services/fs.h
	libctru/source/services/apt.c
2015-10-03 12:39:09 +02:00
smea
c765e3b559 Update fs.c 2015-10-02 23:10:38 -07:00
smea
8e43355620 Merge branch 'patch-1' of github.com:smealum/ctrulib 2015-10-02 23:07:46 -07:00
smea
87b9d1302a Added FSUSER_GetMediaType 2015-10-02 23:05:30 -07:00
thedax
04ddaff8cd Return the svcSendSyncRquest value if not equal to zero.
Otherwise, return cmdbuf[1].
2015-10-02 21:01:19 -04:00
fincs
89e0bcd8cc NDSP: add mechanism to load the component from an external source 2015-10-02 23:58:02 +02:00
fincs
f1ce480ed9 Add a work-in-progress API for using Nintendo's default DSP component 2015-10-02 21:54:18 +02:00
thedax
861c0a10b5 Change the enum to use BIT and replace u32 with the enum type. 2015-10-01 13:04:21 -04:00
suloku
b6817008ac Update apt.c 2015-10-01 19:01:31 +02:00
suloku
76e3cb0721 Implement APT_GetProgramID 2015-10-01 17:19:13 +02:00
suloku
2dc74a81ab Update apt.h 2015-10-01 17:18:17 +02:00
thedax
5426fba742 Add an enum to make using the gsp::Lcd service a little nicer. 2015-09-30 20:14:10 -04:00
thedax
7bad79e8b4 Implement some services from gsp::Lcd.
http://www.3dbrew.org/wiki/GSP_Services
2015-09-30 18:21:49 -04:00
fincs
9e43411a0e LightLock: avoid the svcArbitrateAddress() call if no thread is waiting 2015-09-30 22:39:57 +02:00
fincs
abd104fae7 Initialize light primitive system if needed 2015-09-30 00:35:01 +02:00
fincs
72ea825b2d Move __clrex/__ldrex/__strex to synchronization.h 2015-09-30 00:20:05 +02:00
fincs
95f63f280d Add lightweight synchronization primitives 2015-09-30 00:07:42 +02:00
fincs
4603b972fa Merge branch 'master' into great-refactor
Conflicts:
	libctru/include/3ds/services/apt.h
	libctru/source/services/apt.c
2015-09-29 23:21:45 +02:00
fincs
6590ed3fad Merge pull request #170 from Lectem/patch-2
document ArbitrateAddress + update ArbitrationType
2015-09-29 23:18:21 +02:00
smea
56b56955c0 Update apt.h 2015-09-27 21:35:55 -07:00
smea
520332e49e Update apt.h 2015-09-27 21:34:47 -07:00
megazig
27b5a49c59 implement APT_GetAppletInfo 2015-09-27 23:30:16 -05:00
smea
c6192c331b Merge branch 'master' of github.com:smealum/ctrulib 2015-09-26 17:03:46 -07:00
smea
066d8873d3 added CFG_Region and CFG_Language enums 2015-09-26 17:03:42 -07:00
fincs
c9a75d6a18 DSP code format cleanup 2015-09-25 22:06:51 +02:00
fincs
649e95cd39 Merge branch 'master' into great-refactor
Conflicts:
	libctru/include/3ds/services/apt.h
	libctru/source/services/apt.c
2015-09-25 16:16:10 +02:00
yellows8
2b467b48b8 Implemented http service-cmd code for GetResponseHeader. 2015-09-24 13:04:18 -04:00
yellows8
31b724a431 Added APT_GetAppletProgramInfo. 2015-09-24 04:26:48 -04:00
Steven Smith
2836b696bd Fix reading accelerometer and gyroscope entries. 2015-09-22 19:12:52 -07:00
Lectem
0a66043e56 document ArbitrateAddress + update ArbitrationType
This has been tested on n3ds 9.9.
2015-09-18 23:04:20 -04:00
fincs
cd05ca0887 Merge branch 'master' into great-refactor 2015-09-18 23:17:28 +02:00
fincs
bf1f162549 Add romfsInitFromFile() 2015-09-18 23:17:12 +02:00
fincs
6892a71eec Restore service session parameter in FSUSER_Initialize() 2015-09-16 23:58:12 +02:00
fincs
e409f1ea1d Add srvGetServiceHandleDirect() 2015-09-16 23:57:28 +02:00
fincs
04ed53659a Merge branch 'master' into great-refactor 2015-09-15 11:47:55 +02:00
Yuri Kunde Schlesner
d08707e3ca GSP: Use atomics in interrupt reading loop 2015-09-15 02:44:40 -03:00
fincs
aa2153700e Merge branch 'great-refactor' of github.com:smealum/ctrulib into great-refactor 2015-09-13 18:41:18 +02:00
fincs
c99707ada4 Add fragment lighting register names, enumerations, etc 2015-09-13 18:40:37 +02:00
Lectem
0f89778297 Fixed and enhanced IPC_MakeHeader documentation 2015-09-09 17:30:12 -04:00
fincs
730899bee6 Merge pull request #165 from Lectem/dsp
Dsp fixes
2015-09-09 15:56:21 +02:00
Lectem
a68ee14632 Formatting and fixes for DSP 2015-09-09 09:48:40 -04:00
Lectem
77c843f898 Better enum IPC_BufferRights 2015-09-09 09:11:15 -04:00
fincs
9bf546da45 () -> (void), again 2015-09-09 01:47:30 +02:00
fincs
62aa4d8ab0 Merge branch 'master' into great-refactor 2015-09-09 01:46:00 +02:00
fincs
ce59e60193 Merge pull request #161 from Steveice10/master
Add cam:u support and basic documentation.
2015-09-09 01:45:32 +02:00
Steven Smith
9d3b139255 Add cam:u support and basic documentation. 2015-09-08 16:26:56 -07:00
fincs
0ace45a746 Add some more GPU enum values from the 3dbrew wiki 2015-09-08 20:55:43 +02:00
fincs
428a837224 Merge branch 'master' into great-refactor 2015-09-08 20:54:37 +02:00
fincs
c9ad04f70a Merge pull request #164 from Lectem/dsp
IPC stuff and DSP service commands
2015-09-08 20:53:29 +02:00
Lectem
d227918edc Added DSP service commands 2015-09-08 14:25:51 -04:00
Lectem
0d7072ecd2 Added IPC helpers 2015-09-08 14:25:39 -04:00
megazig
6d1f409dfd added new NS_APPID values for latest apt module 2015-09-08 12:02:45 -05:00
fincs
fded98b9ed Sync register names with 3dbrew wiki 2015-09-07 19:31:02 +02:00
fincs
c594170fca Rename GX commands 2015-09-07 12:53:37 +02:00
fincs
530849a4b0 Merge branch 'master' into great-refactor 2015-09-07 12:38:09 +02:00
fincs
e352f3befd Change default linear/VRAM mem alignment to 0x80 (for GPU textures) 2015-09-07 12:37:55 +02:00
fincs
0d7a7f4d7d Add missing (void) to functions without arguments 2015-09-06 18:13:31 +02:00
fincs
1817f90c6d Remove service handle parameter from GSPGPU IPC wrappers 2015-09-06 18:04:03 +02:00
fincs
053c71ad08 Remove service handle parameter from FSUSER IPC wrappers 2015-09-06 17:54:36 +02:00