#include const char *default_title = "Sample"; const char *default_code = "NPI7"; const char *default_unique_id = "0xff3ff"; const char *default_romfs_path = "romfs"; const char *sample_header = "// Sample Header File\n" "#pragma once\n" "#include <3ds.h>\n" "#include "; const char *sample_code = "// Sample Source Code for Hello World\n\n" "#include \n\n" "int main() {\n" " gfxInitDefault();\n" " consoleInit(GFX_TOP, NULL);\n" " printf(\"Hello World!\\n\");\n" " printf(\"Press START to exit!\\n\");\n" " while(aptMainLoop()) {\n" " hidScanInput();\n" " if(hidKeysDown() & KEY_START) break;\n" " gfxSwapBuffers();\n" " }\n" " gfxExit();\n" "}"; const char *ciaRSF = "#This File is generated by npi-build!\n" "#Every Changes made will get overwritten\n" "#if the name of this file is \n" "#To use custom rsf files change the path in build.json\n" "BasicInfo:\n" " Title : \"%s\"\n" " ProductCode : \"CTR-H-%s\"\n" " Logo : Homebrew # Nintendo / Licensed / Distributed " "/ iQue / iQueForSystem\n" "\n" "RomFs:\n" " RootPath: \"%s\"\n" "\n" "TitleInfo:\n" " Category : Application\n" " UniqueId : %s\n" "\n" "Option:\n" " UseOnSD : true # true if App is to be installed to SD\n" " FreeProductCode : true # Removes limitations on ProductCode\n" " MediaFootPadding : false # If true CCI files are created with " "padding\n" " EnableCrypt : false # Enables encryption for NCCH and CIA\n" " EnableCompress : true # Compresses where applicable (currently " "only exefs:/.code)\n" " \n" "AccessControlInfo:\n" " CoreVersion : 2\n" "\n" " # Exheader Format Version\n" " DescVersion : 2\n" " \n" " # Minimum Required Kernel Version (below is for 4.5.0)\n" " ReleaseKernelMajor : \"02\"\n" " ReleaseKernelMinor : \"33\"\n" "\n" " # ExtData\n" " UseExtSaveData : false # enables ExtData \n" " #ExtSaveDataId : 0x300 # only set this when the ID is " "different to the UniqueId\n" "\n" " # FS:USER Archive Access Permissions\n" " # Uncomment as required\n" " FileSystemAccess:\n" " - CategorySystemApplication\n" " - CategoryHardwareCheck\n" " - CategoryFileSystemTool\n" " - Debug\n" " - TwlCardBackup\n" " - TwlNandData\n" " #- Boss\n" " - DirectSdmc\n" " - Core\n" " #- CtrNandRo\n" " #- CtrNandRw\n" " #- CtrNandRoWrite\n" " - CategorySystemSettings\n" " #- CardBoard\n" " #- ExportImportIvs\n" " - DirectSdmcWrite\n" " #- SwitchCleanup\n" " #- SaveDataMove\n" " #- Shop\n" " #- Shell\n" " #- CategoryHomeMenu\n" " #- SeedDB\n" " IoAccessControl:\n" " #- FsMountNand\n" " #- FsMountNandRoWrite\n" " - FsMountTwln\n" " #- FsMountWnand\n" " - FsMountCardSpi\n" " - UseSdif3\n" " #- CreateSeed\n" " - UseCardSpi\n" "\n" " # Process Settings\n" " MemoryType : Application # Application/System/Base\n" " SystemMode : 64MB # " "64MB(Default)/96MB/80MB/72MB/32MB\n" " IdealProcessor : 0\n" " AffinityMask : 1\n" " Priority : 16\n" " MaxCpu : 0x9E # Default\n" " HandleTableSize : 0x200\n" " DisableDebug : false\n" " EnableForceDebug : false\n" " CanWriteSharedPage : true\n" " CanUsePrivilegedPriority : false\n" " CanUseNonAlphabetAndNumber : true\n" " PermitMainFunctionArgument : true\n" " CanShareDeviceMemory : true\n" " RunnableOnSleep : false\n" " SpecialMemoryArrange : true\n" "\n" " # New3DS Exclusive Process Settings\n" " SystemModeExt : Legacy # Legacy(Default)/124MB/178MB " "Legacy:Use Old3DS SystemMode\n" " CpuSpeed : 804MHz # 268MHz(Default)/804MHz\n" " EnableL2Cache : true # false(default)/true\n" " CanAccessCore2 : true \n" "\n" " # Virtual Address Mappings\n" " IORegisterMapping:\n" " - 1ff00000-1ff7ffff # DSP memory\n" " MemoryMapping: \n" " - 1f000000-1f5fffff:r # VRAM\n" "\n" " # Accessible SVCs, :\n" " SystemCallAccess: \n" " ControlMemory: 1\n" " QueryMemory: 2\n" " ExitProcess: 3\n" " GetProcessAffinityMask: 4\n" " SetProcessAffinityMask: 5\n" " GetProcessIdealProcessor: 6\n" " SetProcessIdealProcessor: 7\n" " CreateThread: 8\n" " ExitThread: 9\n" " SleepThread: 10\n" " GetThreadPriority: 11\n" " SetThreadPriority: 12\n" " GetThreadAffinityMask: 13\n" " SetThreadAffinityMask: 14\n" " GetThreadIdealProcessor: 15\n" " SetThreadIdealProcessor: 16\n" " GetCurrentProcessorNumber: 17\n" " Run: 18\n" " CreateMutex: 19\n" " ReleaseMutex: 20\n" " CreateSemaphore: 21\n" " ReleaseSemaphore: 22\n" " CreateEvent: 23\n" " SignalEvent: 24\n" " ClearEvent: 25\n" " CreateTimer: 26\n" " SetTimer: 27\n" " CancelTimer: 28\n" " ClearTimer: 29\n" " CreateMemoryBlock: 30\n" " MapMemoryBlock: 31\n" " UnmapMemoryBlock: 32\n" " CreateAddressArbiter: 33\n" " ArbitrateAddress: 34\n" " CloseHandle: 35\n" " WaitSynchronization1: 36\n" " WaitSynchronizationN: 37\n" " SignalAndWait: 38\n" " DuplicateHandle: 39\n" " GetSystemTick: 40\n" " GetHandleInfo: 41\n" " GetSystemInfo: 42\n" " GetProcessInfo: 43\n" " GetThreadInfo: 44\n" " ConnectToPort: 45\n" " SendSyncRequest1: 46\n" " SendSyncRequest2: 47\n" " SendSyncRequest3: 48\n" " SendSyncRequest4: 49\n" " SendSyncRequest: 50\n" " OpenProcess: 51\n" " OpenThread: 52\n" " GetProcessId: 53\n" " GetProcessIdOfThread: 54\n" " GetThreadId: 55\n" " GetResourceLimit: 56\n" " GetResourceLimitLimitValues: 57\n" " GetResourceLimitCurrentValues: 58\n" " GetThreadContext: 59\n" " Break: 60\n" " OutputDebugString: 61\n" " ControlPerformanceCounter: 62\n" " CreatePort: 71\n" " CreateSessionToPort: 72\n" " CreateSession: 73\n" " AcceptSession: 74\n" " ReplyAndReceive1: 75\n" " ReplyAndReceive2: 76\n" " ReplyAndReceive3: 77\n" " ReplyAndReceive4: 78\n" " ReplyAndReceive: 79\n" " BindInterrupt: 80\n" " UnbindInterrupt: 81\n" " InvalidateProcessDataCache: 82\n" " StoreProcessDataCache: 83\n" " FlushProcessDataCache: 84\n" " StartInterProcessDma: 85\n" " StopDma: 86\n" " GetDmaState: 87\n" " RestartDma: 88\n" " DebugActiveProcess: 96\n" " BreakDebugProcess: 97\n" " TerminateDebugProcess: 98\n" " GetProcessDebugEvent: 99\n" " ContinueDebugEvent: 100\n" " GetProcessList: 101\n" " GetThreadList: 102\n" " GetDebugThreadContext: 103\n" " SetDebugThreadContext: 104\n" " QueryDebugProcessMemory: 105\n" " ReadProcessMemory: 106\n" " WriteProcessMemory: 107\n" " SetHardwareBreakPoint: 108\n" " GetDebugThreadParam: 109\n" " ControlProcessMemory: 112\n" " MapProcessMemory: 113\n" " UnmapProcessMemory: 114\n" " CreateCodeSet: 115\n" " CreateProcess: 117\n" " TerminateProcess: 118\n" " SetProcessResourceLimits: 119\n" " CreateResourceLimit: 120\n" " SetResourceLimitValues: 121\n" " AddCodeSegment: 122\n" " Backdoor: 123\n" " KernelSetState: 124\n" " QueryProcessMemory: 125\n" "\n" " # Service List\n" " # Maximum 34 services (32 if firmware is prior to 9.6.0)\n" " ServiceAccessControl:\n" " - APT:U\n" " - ac:u\n" " - am:net\n" " #- boss:U\n" " #- cam:u\n" " #- cecd:u\n" " #- cfg:nor\n" " - cfg:u\n" " #- csnd:SND\n" " - dsp::DSP\n" " #- frd:u\n" " - fs:USER\n" " - gsp::Gpu\n" " - gsp::Lcd\n" " - hid:USER\n" " - http:C\n" " #- ir:rst\n" " #- ir:u\n" " #- ir:USER\n" " #- mic:u\n" " #- ndm:u\n" " #- news:s\n" " - nwm::EXT\n" " - nwm::UDS\n" " - ptm:sysm\n" " - ptm:u\n" " - pxi:dev\n" " - soc:U\n" " - ssl:C\n" " #- y2r:u\n" "\n" "\n" "SystemControlInfo:\n" " SaveDataSize: 0KB # Change if the app uses savedata\n" " RemasterVersion: $(APP_VERSION_MAJOR)\n" " StackSize: 0x40000\n" "\n" " # Modules that run services listed above should be included below\n" " # Maximum 48 dependencies\n" " # :\n" " Dependency:\n" " ac: 0x0004013000002402\n" " #act: 0x0004013000003802\n" " am: 0x0004013000001502\n" " boss: 0x0004013000003402\n" " camera: 0x0004013000001602\n" " cecd: 0x0004013000002602\n" " cfg: 0x0004013000001702\n" " codec: 0x0004013000001802\n" " csnd: 0x0004013000002702\n" " dlp: 0x0004013000002802\n" " dsp: 0x0004013000001a02\n" " friends: 0x0004013000003202\n" " gpio: 0x0004013000001b02\n" " gsp: 0x0004013000001c02\n" " hid: 0x0004013000001d02\n" " http: 0x0004013000002902\n" " i2c: 0x0004013000001e02\n" " ir: 0x0004013000003302\n" " mcu: 0x0004013000001f02\n" " mic: 0x0004013000002002\n" " ndm: 0x0004013000002b02\n" " news: 0x0004013000003502\n" " #nfc: 0x0004013000004002\n" " nim: 0x0004013000002c02\n" " nwm: 0x0004013000002d02\n" " pdn: 0x0004013000002102\n" " ps: 0x0004013000003102\n" " ptm: 0x0004013000002202\n" " #qtm: 0x0004013020004202\n" " ro: 0x0004013000003702\n" " socket: 0x0004013000002e02\n" " spi: 0x0004013000002302\n" " ssl: 0x0004013000002f02\n";