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
162 lines
2.7 KiB
C++
162 lines
2.7 KiB
C++
#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;
|
|
}
|
|
}
|
|
};
|
|
};
|