mirror of
https://github.com/rvtr/ctr_card_test.git
synced 2025-06-19 07:05:33 -04:00
ソースのインポート
git-svn-id: file:///Volumes/Transfer/gigaleak_20231201/2020-09-30%20-%20paladin.7z/paladin/ctr_card_test@1 ff8ce827-af98-4349-adb5-4c00699b5328
This commit is contained in:
commit
fa6e7597d5
61
trunk/CommandTest.cpp
Normal file
61
trunk/CommandTest.cpp
Normal file
@ -0,0 +1,61 @@
|
|||||||
|
#include "nakayama.h"
|
||||||
|
|
||||||
|
using namespace nn::red::nakayama;
|
||||||
|
|
||||||
|
|
||||||
|
class CommandTest : public Program
|
||||||
|
{
|
||||||
|
virtual void Execute()
|
||||||
|
{
|
||||||
|
Page page;
|
||||||
|
|
||||||
|
Label title;
|
||||||
|
title.X = 20;
|
||||||
|
title.Y = 10;
|
||||||
|
title.Text = "Command Test";
|
||||||
|
page.Add(title);
|
||||||
|
|
||||||
|
Label date;
|
||||||
|
date.X = 250;
|
||||||
|
date.Y = 10;
|
||||||
|
date.Text = __DATE__;
|
||||||
|
page.Add(date);
|
||||||
|
|
||||||
|
ValueSelector menu;
|
||||||
|
menu.X = 30;
|
||||||
|
menu.Y = 40;
|
||||||
|
page.Add(menu);
|
||||||
|
|
||||||
|
SelectableValue<int> address;
|
||||||
|
address.Add( 0 );
|
||||||
|
address.Add( 1 );
|
||||||
|
address.Add( 2 );
|
||||||
|
menu.Register("Address", address);
|
||||||
|
|
||||||
|
SelectableValue< NamedValue<int> > loop;
|
||||||
|
loop.Add(*(new NamedValue<int>("Once", 0)));
|
||||||
|
loop.Add(*(new NamedValue<int>("Repeat", 1)));
|
||||||
|
menu.Register("Loop", loop);
|
||||||
|
|
||||||
|
// 画面表示しながら選択を受け付ける
|
||||||
|
while(1)
|
||||||
|
{
|
||||||
|
page.Show(Display::GetInstance(Display::Upper));
|
||||||
|
|
||||||
|
// 選択されたら
|
||||||
|
if(menu.Selected)
|
||||||
|
{
|
||||||
|
int a = address.GetValue();
|
||||||
|
int l = loop.GetValue().Value;
|
||||||
|
menu.Selected = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// キャンセルされたら
|
||||||
|
if(menu.Canceled)
|
||||||
|
{
|
||||||
|
menu.Canceled = false;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
};
|
65
trunk/CtrCardTest.cpp
Normal file
65
trunk/CtrCardTest.cpp
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
#include "nakayama.h"
|
||||||
|
#include "FunctionTest.cpp"
|
||||||
|
#include "CommandTest.cpp"
|
||||||
|
|
||||||
|
using namespace nn::red::nakayama;
|
||||||
|
|
||||||
|
class CtrCardTest : public Program
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
virtual void Execute()
|
||||||
|
{
|
||||||
|
// ページ
|
||||||
|
Page page;
|
||||||
|
|
||||||
|
// タイトルラベル
|
||||||
|
Label title;
|
||||||
|
title.X = 20;
|
||||||
|
title.Y = 10;
|
||||||
|
title.Text = "CTR Card Test";
|
||||||
|
page.Add(title);
|
||||||
|
|
||||||
|
// 日付ラベル
|
||||||
|
Label date;
|
||||||
|
date.X = 250;
|
||||||
|
date.Y = 10;
|
||||||
|
date.Text = __DATE__;
|
||||||
|
page.Add(date);
|
||||||
|
|
||||||
|
// 選択肢
|
||||||
|
Selector<Program> menu;
|
||||||
|
menu.X = 30;
|
||||||
|
menu.Y = 40;
|
||||||
|
page.Add(menu);
|
||||||
|
|
||||||
|
// 選択肢に項目を追加
|
||||||
|
menu.Register("Function Test", *(new FunctionTest()));
|
||||||
|
menu.Register("Command Test", *(new CommandTest()));
|
||||||
|
menu.Register("Reliability Test for ROM", *(new FunctionTest()));
|
||||||
|
menu.Register("Reliability Test for Writable Memory", *(new CommandTest()));
|
||||||
|
|
||||||
|
// 画面表示しながら選択を受け付ける
|
||||||
|
while(1)
|
||||||
|
{
|
||||||
|
page.Show(Display::GetInstance(Display::Upper));
|
||||||
|
|
||||||
|
// 選択されたら
|
||||||
|
if(menu.Selected)
|
||||||
|
{
|
||||||
|
menu.GetSelectedItem()->Execute();
|
||||||
|
menu.Selected = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// キャンセルされたら
|
||||||
|
if(menu.Canceled)
|
||||||
|
{
|
||||||
|
menu.Canceled = false;
|
||||||
|
Display::GetInstance(Display::Upper).Clear();
|
||||||
|
Display::GetInstance(Display::Upper).SwapBuffer();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
176
trunk/CtrCardTest.desc
Normal file
176
trunk/CtrCardTest.desc
Normal file
@ -0,0 +1,176 @@
|
|||||||
|
DefaultSpec:
|
||||||
|
AccessControlInfo:
|
||||||
|
HandleTableSize: 512
|
||||||
|
AffinityMask: 1
|
||||||
|
MemoryMapping:
|
||||||
|
- 1f000000-1f3fffff:r
|
||||||
|
StorageId: "0"
|
||||||
|
IdealProcessor: 0
|
||||||
|
Priority: 16
|
||||||
|
ProgramId: 0L
|
||||||
|
Rom:
|
||||||
|
DefaultReject:
|
||||||
|
- .*
|
||||||
|
File:
|
||||||
|
- "*"
|
||||||
|
BasicInfo:
|
||||||
|
Title: default
|
||||||
|
InitialCode:
|
||||||
|
CompanyCode:
|
||||||
|
Media:
|
||||||
|
MediaType: Card
|
||||||
|
SystemControlInfo:
|
||||||
|
StackSize: 16384
|
||||||
|
Dependency:
|
||||||
|
- .GPI
|
||||||
|
- .SPI
|
||||||
|
- .GSP
|
||||||
|
- .I2C
|
||||||
|
- .CDC
|
||||||
|
- .HID
|
||||||
|
- .MCU
|
||||||
|
- .PDN
|
||||||
|
- .MIC
|
||||||
|
- .DSP
|
||||||
|
- .CAM
|
||||||
|
- .PTM
|
||||||
|
CommonHeaderKey:
|
||||||
|
DP: |
|
||||||
|
JChx9AzZmb1E1TZ3Bc4XWjLURl6EqkaGhmGnDi4ayuMWED6CPJ1RBRD7a4aD
|
||||||
|
53i4hVl9ZAowKKHd64fuK/k781sDnBQJMqYH1+EzK/M6s5jnj51JMoycw034
|
||||||
|
e3XC25R1F6wO/ByzpyBSHlN0CadXRW6GUvU2PGuok4Zy8+ArcuE=
|
||||||
|
|
||||||
|
InverseQ: |
|
||||||
|
aJQTgPO3Z/8TuNA1Ebtj1fyFZqCo+mB/hfrTPUFh7A9z1TbwyIPVhpAeSnjl
|
||||||
|
uJOUdkfjMEK7HzXIC7yPgUUWGh0PKMm3G5IX/GhwOck/+dsdcw7LrWNjnCxp
|
||||||
|
Cbnu3P3HmBg3d4gRk1egr1VTRrZyEcBqRpJSggIKdwarwLmgBtY=
|
||||||
|
|
||||||
|
Modulus: |
|
||||||
|
4s3l6Duqv6ecvppOVj+yAvnO9cToWrUBimIVPUgrVdQc+ux1Uo7ynaJfIcwb
|
||||||
|
k2LhdujYNMnO/QOzm6NuQgKknRau1iZI1WJVk2mHJCSfXh5P03ADwQmBqxsf
|
||||||
|
LXBlTxmxUqstI4lepNEaZBO9MRdme86sATt8/5iuCpbxuxXvIVb5dFBkS4VD
|
||||||
|
qf3soo6uN7o77E78JvpW0GCLcT62yBwvd3o0u0ddco2eSknxtOAzyhGHJkht
|
||||||
|
ACyaVYStYBAgh2aiAs2BPKozC3fwhkG/RckZ9crAwuhg2zLyoZrUDkxQ//YI
|
||||||
|
lSrLEjdamY1PP9wWl5C3yx+gLHEl4uRGqPdRILvznQ==
|
||||||
|
|
||||||
|
DQ: |
|
||||||
|
tnJM1A8dIxe6AqhorOAaTpDMBhNCVADJ9AdRoI/typVuOlNCghbvIIyGqqdU
|
||||||
|
xAOWioeS/11/bNZ+4jNGurH/njAmNCv3nrIzr5rVzCYPa7qTXYZkCQLIG2yx
|
||||||
|
tsuQbxV1moyOYUgwdacrnj/hjSrDaLCCzpX0w2xyO85JNh6n4Sk=
|
||||||
|
|
||||||
|
D: |
|
||||||
|
s+XbecRyIIkDlE/y2Qi22xNorJreLqyqJyi7bhtjfDW+Mu4B9VU7bfuP98/d
|
||||||
|
A6AH9HimneCBFUGtYkNUvnk4Nv35+hTt6ouQE1g+AFYoLtBeQvjzkVdICf9+
|
||||||
|
UF15ji9z7n2mVSyt7I+Lnlvl0h2chZGd73BPKrHhQrcN0HaKceb7OmA75S6T
|
||||||
|
T+3Dy1GLAe26EWxDKLv2jfUsVG3mvOm5SXlBA//7ztas4pc5N8XTnD5uEEAv
|
||||||
|
/582qOsB2YAN+E6kEnNiyH2+l5dcrQiUxCz8NjdFX+4BfzUFVeY0iATE+DwZ
|
||||||
|
t7f4RmasJpHSm1wASq3i917tZy/hstafbzZYAICDoQ==
|
||||||
|
|
||||||
|
P: |
|
||||||
|
/dKKGrrV19M10Ayet/gGXptE6euuoxOLprkTFIriodV4FZ+MCoRuoDEmu2Q8
|
||||||
|
DRHEt+I9yx8LtCeqYD4gkr1PiUtu+WjIPretdgwmF22lXqVE5SahcuM+hFpD
|
||||||
|
YnJ2fo4q47u9iWyUZXS8nhiiQF3p+ZP0ojVWsb0C1FHIIBzwEeU=
|
||||||
|
|
||||||
|
Q: |
|
||||||
|
5MAFC9ZMXRjPvwz66vB+yAV/eQ8haZJ9kUXGFLlpzenvg33s0WgnBWt+F+Fl
|
||||||
|
scmt1tduZn0WXmekAf07h5Ugi489m57e5pNwFF3YD3S7J3CiZ0JBwGoHF7kH
|
||||||
|
vZNq32gAvpWL41Ufg9XeICyqKmyU4ggPFH194PcZdq9Y4Lz/H1k=
|
||||||
|
|
||||||
|
Exponent: |
|
||||||
|
AQAB
|
||||||
|
|
||||||
|
AccessControlDescriptor:
|
||||||
|
HandleTableSize: 512
|
||||||
|
Signature: |
|
||||||
|
tvOhowzhCW7eH1t0TL+bDhSZSOsNqw7PK6EZX1vpkaaHQwRQgsgvzcbzSMrd
|
||||||
|
7TWQy9vE4HsHXN8JJ+I0XuAk+SBQ43bRlV0IzOrNzEWhfRsaQraU4FjyhtM/
|
||||||
|
/b/+1GAPUjacwXx41Scwwnu2WsDmrvBGU9dOkjyZSril1qK1He1+X8DYKfBC
|
||||||
|
ORSwpOia9wGmmFLwwY4mcKXrEH4hyVadAuhqIYikAJ9cmY4R13e4Uu3xdCAM
|
||||||
|
BgnK63U2aXe+22RxCvcEKTt//lZMwFIDu/81gJFsmY9o5ktv30dO7C6OfNaT
|
||||||
|
hpDHXvXv4dGDVkfJN57Ze0d1+ySGYpXghfMiCCZQiw==
|
||||||
|
|
||||||
|
MemoryMapping:
|
||||||
|
- 1f000000-1f3fffff:r
|
||||||
|
AffinityMask: 1
|
||||||
|
EnableInterruptNumbers:
|
||||||
|
EnableSystemCalls:
|
||||||
|
WaitSynchronization: 72
|
||||||
|
GetThreadIdealProcessor: 39
|
||||||
|
GetProcessIdealProcessor: 22
|
||||||
|
CloseHandle: 71
|
||||||
|
CancelTimer: 66
|
||||||
|
SleepThread: 31
|
||||||
|
SendSyncRequest: 47
|
||||||
|
DuplicateHandle: 118
|
||||||
|
CreateEvent: 59
|
||||||
|
SetThreadIdealProcessor: 40
|
||||||
|
ReleaseMutex: 55
|
||||||
|
GetSystemTick: 73
|
||||||
|
GetCurrentProcessorNumber: 41
|
||||||
|
ClearTimer: 67
|
||||||
|
GetProcessIdOfThread: 34
|
||||||
|
AllocateSharedMemory: 6
|
||||||
|
SetThreadAffinityMask: 38
|
||||||
|
SetProcessAffinityMask: 21
|
||||||
|
GetThreadId: 33
|
||||||
|
GetResourceLimit: 14
|
||||||
|
GetHandleInfo: 108
|
||||||
|
ArbitrateAddress: 120
|
||||||
|
MapSharedMemory: 8
|
||||||
|
GetResourceLimitLimitValues: 25
|
||||||
|
GetProcessAffinityMask: 20
|
||||||
|
CreateThread: 28
|
||||||
|
ConnectToPort: 44
|
||||||
|
ClearEvent: 62
|
||||||
|
SignalEvent: 61
|
||||||
|
SetTimer: 65
|
||||||
|
ReleaseSemaphore: 58
|
||||||
|
OutputDebugString: 94
|
||||||
|
CreateMutex: 53
|
||||||
|
GetThreadPriority: 35
|
||||||
|
GetThreadContext: 32
|
||||||
|
GetResourceLimitCurrentValues: 27
|
||||||
|
ExitThread: 30
|
||||||
|
CreateSemaphore: 56
|
||||||
|
ControlMemory: 1
|
||||||
|
UnmapSharedMemory: 9
|
||||||
|
SetThreadPriority: 36
|
||||||
|
QueryMemory: 2
|
||||||
|
GetThreadAffinityMask: 37
|
||||||
|
GetProcessId: 19
|
||||||
|
CreateTimer: 63
|
||||||
|
Break: 93
|
||||||
|
CreateAddressArbiter: 119
|
||||||
|
SetProcessIdealProcessor: 23
|
||||||
|
ExitProcess: 18
|
||||||
|
StorageId:
|
||||||
|
- "0"
|
||||||
|
IORegisterMapping:
|
||||||
|
- 1ec00000-1effffff
|
||||||
|
|
||||||
|
IdealProcessor: 1
|
||||||
|
Descriptor: |
|
||||||
|
AAAAAAAAAAAAAAAAAAEBYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABmczpVU0VSAGdz
|
||||||
|
cDo6R3B1aGlkOlVTRVJjYW06dQAAAHkycjp1AAAAbWljOnUAAABzb2M6VQAA
|
||||||
|
AHB4aTpoaW8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
|
||||||
|
AAAAAAAAAABGQ/zw2v+T8aDtjvIDAGDzABDA9AEAAPUA8JH/APSR/wEAAP8A
|
||||||
|
AgD+////////////////////////////////////////////////////////
|
||||||
|
////////////////////////////////////////AAAAAAAAAAAAAAAAAAAA
|
||||||
|
AP////////////////////8=
|
||||||
|
|
||||||
|
ServiceAccessControl:
|
||||||
|
- fs:USER
|
||||||
|
- gsp::Gpu
|
||||||
|
- hid:USER
|
||||||
|
- cam:u
|
||||||
|
- y2r:u
|
||||||
|
- mic:u
|
||||||
|
- soc:U
|
||||||
|
- pxi:hio
|
||||||
|
Priority: 96
|
||||||
|
ProgramId: 0L
|
8
trunk/CtrCardTest.rsf
Normal file
8
trunk/CtrCardTest.rsf
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
BasicInfo:
|
||||||
|
Title : CardTest
|
||||||
|
CompanyCode:
|
||||||
|
InitialCode:
|
||||||
|
|
||||||
|
AccessControlInfo:
|
||||||
|
IORegisterMapping:
|
||||||
|
- 1ec40000-1ec46fff
|
161
trunk/FunctionTest.cpp
Normal file
161
trunk/FunctionTest.cpp
Normal file
@ -0,0 +1,161 @@
|
|||||||
|
#include "nakayama.h"
|
||||||
|
|
||||||
|
using namespace nn::red::nakayama;
|
||||||
|
|
||||||
|
class S1FunctionTest : public Program
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
virtual void Execute()
|
||||||
|
{
|
||||||
|
// ページ
|
||||||
|
Page page;
|
||||||
|
|
||||||
|
Label running;
|
||||||
|
running.X = 120;
|
||||||
|
running.Y = 100;
|
||||||
|
running.Text = "Running";
|
||||||
|
page.Add(running);
|
||||||
|
|
||||||
|
Label loop;
|
||||||
|
loop.X = 10;
|
||||||
|
loop.Y = 200;
|
||||||
|
loop.Text = "Loop:";
|
||||||
|
page.Add(loop);
|
||||||
|
|
||||||
|
Label count;
|
||||||
|
count.X = 60;
|
||||||
|
count.Y = 200;
|
||||||
|
count.Text = "0000000000000";
|
||||||
|
page.Add(count);
|
||||||
|
|
||||||
|
KeyPad& pad = KeyPad::GetInstance();
|
||||||
|
|
||||||
|
// 画面表示しながら選択を受け付ける
|
||||||
|
while(1)
|
||||||
|
{
|
||||||
|
pad.ReadKey();
|
||||||
|
page.Show(Display::GetInstance(Display::Lower));
|
||||||
|
|
||||||
|
// Bボタンが押されたら
|
||||||
|
if(pad.IsTrigger(KeyPad::B))
|
||||||
|
{
|
||||||
|
Display::GetInstance(Display::Lower).Clear();
|
||||||
|
Display::GetInstance(Display::Lower).SwapBuffer();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
class S2FunctionTest : public Program
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
virtual void Execute()
|
||||||
|
{
|
||||||
|
// ページ
|
||||||
|
Page page;
|
||||||
|
|
||||||
|
Label running;
|
||||||
|
running.X = 120;
|
||||||
|
running.Y = 100;
|
||||||
|
running.Text = "Running";
|
||||||
|
page.Add(running);
|
||||||
|
|
||||||
|
Label loop;
|
||||||
|
loop.X = 10;
|
||||||
|
loop.Y = 200;
|
||||||
|
loop.Text = "Loop:";
|
||||||
|
page.Add(loop);
|
||||||
|
|
||||||
|
Label count;
|
||||||
|
count.X = 60;
|
||||||
|
count.Y = 200;
|
||||||
|
count.Text = "0000000000000";
|
||||||
|
page.Add(count);
|
||||||
|
|
||||||
|
KeyPad& pad = KeyPad::GetInstance();
|
||||||
|
|
||||||
|
// 画面表示しながら選択を受け付ける
|
||||||
|
while(1)
|
||||||
|
{
|
||||||
|
pad.ReadKey();
|
||||||
|
page.Show(Display::GetInstance(Display::Lower));
|
||||||
|
|
||||||
|
// Bボタンが押されたら
|
||||||
|
if(pad.IsTrigger(KeyPad::B))
|
||||||
|
{
|
||||||
|
Display::GetInstance(Display::Lower).Clear();
|
||||||
|
Display::GetInstance(Display::Lower).SwapBuffer();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
};
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
class IrregularAccessTest : public Program
|
||||||
|
{
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
class FunctionTest : public Program
|
||||||
|
{
|
||||||
|
virtual void Execute()
|
||||||
|
{
|
||||||
|
Page page;
|
||||||
|
|
||||||
|
Label title;
|
||||||
|
title.X = 20;
|
||||||
|
title.Y = 10;
|
||||||
|
title.Text = "Function Test";
|
||||||
|
page.Add(title);
|
||||||
|
|
||||||
|
Label date;
|
||||||
|
date.X = 250;
|
||||||
|
date.Y = 10;
|
||||||
|
date.Text = __DATE__;
|
||||||
|
page.Add(date);
|
||||||
|
|
||||||
|
Selector<Program> menu;
|
||||||
|
menu.X = 30;
|
||||||
|
menu.Y = 40;
|
||||||
|
page.Add(menu);
|
||||||
|
|
||||||
|
// 選択肢に項目を追加
|
||||||
|
menu.Register("S1 Function Test", *(new S1FunctionTest()));
|
||||||
|
menu.Register("S2 Function Test", *(new S2FunctionTest()));
|
||||||
|
menu.Register("Irregular Access Test", *(new IrregularAccessTest()));
|
||||||
|
|
||||||
|
// 画面表示しながら選択を受け付ける
|
||||||
|
while(1)
|
||||||
|
{
|
||||||
|
page.Show(Display::GetInstance(Display::Upper));
|
||||||
|
|
||||||
|
// 選択されたら
|
||||||
|
if(menu.Selected)
|
||||||
|
{
|
||||||
|
menu.GetSelectedItem()->Execute();
|
||||||
|
menu.Selected = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// キャンセルされたら
|
||||||
|
if(menu.Canceled)
|
||||||
|
{
|
||||||
|
menu.Canceled = false;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
};
|
||||||
|
};
|
37
trunk/OMakefile
Normal file
37
trunk/OMakefile
Normal file
@ -0,0 +1,37 @@
|
|||||||
|
#!/usr/bin/env omake
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
# Project: Horizon
|
||||||
|
# File: OMakefile
|
||||||
|
#
|
||||||
|
# Copyright (C)2009 Nintendo Co., Ltd. All rights reserved.
|
||||||
|
#
|
||||||
|
# These coded instructions, statements, and computer programs contain
|
||||||
|
# proprietary information of Nintendo of America Inc. and/or Nintendo
|
||||||
|
# Company Ltd., and are protected by Federal copyright law. They may
|
||||||
|
# not be disclosed to third parties or copied or duplicated in any form,
|
||||||
|
# in whole or in part, without the prior written consent of Nintendo.
|
||||||
|
#
|
||||||
|
# $Rev:$
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
SUPPORTED_TARGETS = CTR-TEG2.Process.MPCore.*
|
||||||
|
|
||||||
|
SOURCES[] =
|
||||||
|
main.cpp
|
||||||
|
nakayama.cpp
|
||||||
|
CtrCardTest.cpp
|
||||||
|
FunctionTest.cpp
|
||||||
|
|
||||||
|
LIBS += libnn_demo
|
||||||
|
|
||||||
|
TARGET_PROGRAM = template
|
||||||
|
|
||||||
|
CCFLAGS_WARNING += --diag_suppress=228,826,1301,2530
|
||||||
|
|
||||||
|
TITLE = # アプリケーションのタイトルを指定します。
|
||||||
|
ROMFS_ROOT = # ROMFS のルートパスを指定します。
|
||||||
|
ROM_SPEC_FILE = CtrCardTest.rsf
|
||||||
|
DESCRIPTOR = CtrCardTest.desc
|
||||||
|
|
||||||
|
include $(ROOT_OMAKE)/modulerules
|
||||||
|
|
||||||
|
build: $(DEFAULT_TARGETS)
|
73
trunk/OMakeroot
Normal file
73
trunk/OMakeroot
Normal file
@ -0,0 +1,73 @@
|
|||||||
|
#!/usr/bin/env omake
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
# Project: Horizon
|
||||||
|
# File: OMakeroot
|
||||||
|
#
|
||||||
|
# Copyright (C)2009 Nintendo Co., Ltd. All rights reserved.
|
||||||
|
#
|
||||||
|
# These coded instructions, statements, and computer programs contain
|
||||||
|
# proprietary information of Nintendo of America Inc. and/or Nintendo
|
||||||
|
# Company Ltd., and are protected by Federal copyright law. They may
|
||||||
|
# not be disclosed to third parties or copied or duplicated in any form,
|
||||||
|
# in whole or in part, without the prior written consent of Nintendo.
|
||||||
|
#
|
||||||
|
# $Rev:$
|
||||||
|
#----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
# ディレクトリレイアウトについての説明
|
||||||
|
#
|
||||||
|
# a) ソースコードがルートディレクトリ直下に配置される場合
|
||||||
|
# 例:
|
||||||
|
# /OMakeroot
|
||||||
|
# /foo/bar/OMakefile
|
||||||
|
#
|
||||||
|
# 結果:
|
||||||
|
# OMakefile と同じディレクトリ以下に objects や images が生成されます。
|
||||||
|
#
|
||||||
|
# /foo/bar/objects/...
|
||||||
|
# /foo/bar/images/..
|
||||||
|
#
|
||||||
|
#
|
||||||
|
# b) ソースコードが sources 以下に配置される場合
|
||||||
|
# 例:
|
||||||
|
# /OMakeroot
|
||||||
|
# /sources/foo/bar/OMakefile
|
||||||
|
#
|
||||||
|
# 結果:
|
||||||
|
# ルートディレクトリ以下に objects や images が生成されます。
|
||||||
|
#
|
||||||
|
# /objects/foo/bar/...
|
||||||
|
# /images/foo/bar/...
|
||||||
|
#
|
||||||
|
#
|
||||||
|
|
||||||
|
# ルート環境変数の取得
|
||||||
|
public.HORIZON_ROOT =
|
||||||
|
if $(defined-env HORIZON_ROOT)
|
||||||
|
HORIZON_ROOT = $(absname $(getenv HORIZON_ROOT))
|
||||||
|
export
|
||||||
|
|
||||||
|
if $(defined-env CTRSDK_ROOT)
|
||||||
|
CTRSDK_ROOT = $(absname $(getenv CTRSDK_ROOT))
|
||||||
|
if $(and $(defined-env HORIZON_ROOT), $(not $(equal $(HORIZON_ROOT), $(CTRSDK_ROOT))))
|
||||||
|
eprintln(HORIZON_ROOT と CTRSDK_ROOT が一致しません。同じパスを設定するか、どちらか一方だけを定義して下さい。)
|
||||||
|
exit(1)
|
||||||
|
HORIZON_ROOT = $(CTRSDK_ROOT)
|
||||||
|
export
|
||||||
|
|
||||||
|
if $(not $(HORIZON_ROOT))
|
||||||
|
eprintln($"$$CTRSDK_ROOT が定義されていません")
|
||||||
|
exit(1)
|
||||||
|
|
||||||
|
include $(HORIZON_ROOT)/build/omake/commondefs
|
||||||
|
|
||||||
|
DefineCommandVars()
|
||||||
|
|
||||||
|
.PHONY: all build clean clobber
|
||||||
|
.PHONY: run run-scripts
|
||||||
|
|
||||||
|
#
|
||||||
|
# OMakefile の読み込み
|
||||||
|
#
|
||||||
|
.SUBDIRS: .
|
||||||
|
|
32
trunk/main.cpp
Normal file
32
trunk/main.cpp
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
/*---------------------------------------------------------------------------*
|
||||||
|
Project: Horizon
|
||||||
|
File: main.cpp
|
||||||
|
|
||||||
|
Copyright (C)2009 Nintendo Co., Ltd. All rights reserved.
|
||||||
|
|
||||||
|
These coded instructions, statements, and computer programs contain
|
||||||
|
proprietary information of Nintendo of America Inc. and/or Nintendo
|
||||||
|
Company Ltd., and are protected by Federal copyright law. They may
|
||||||
|
not be disclosed to third parties or copied or duplicated in any form,
|
||||||
|
in whole or in part, without the prior written consent of Nintendo.
|
||||||
|
|
||||||
|
$Rev: 9608 $
|
||||||
|
*---------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
#include <stdio.h>
|
||||||
|
|
||||||
|
#include <nn/os.h>
|
||||||
|
#include <nn/dbg.h>
|
||||||
|
|
||||||
|
#include "nakayama.h"
|
||||||
|
#include "CtrCardTest.cpp"
|
||||||
|
|
||||||
|
using namespace nn::red::nakayama;
|
||||||
|
|
||||||
|
extern "C" void nnMain()
|
||||||
|
{
|
||||||
|
CtrCardTest program;
|
||||||
|
program.Execute();
|
||||||
|
|
||||||
|
while(1){};
|
||||||
|
}
|
1658
trunk/nakayama.cpp
Normal file
1658
trunk/nakayama.cpp
Normal file
File diff suppressed because it is too large
Load Diff
1701
trunk/nakayama.h
Normal file
1701
trunk/nakayama.h
Normal file
File diff suppressed because it is too large
Load Diff
BIN
trunk/クラス図.bmp
Normal file
BIN
trunk/クラス図.bmp
Normal file
Binary file not shown.
After Width: | Height: | Size: 4.9 MiB |
Loading…
Reference in New Issue
Block a user