반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- vcruntime.dll
- HackCTF
- hacking
- ucrtbase.dll
- 바이트 오더
- 개발 환경 준비
- Windows Kernel Debug
- C언어 패킷캡쳐
- windows kernel debugging
- pcap packet capture
- IAT Hooking
- vcruntime140.dll
- 윈도우 커널 드라이버
- pcap packet
- apphelp.dll
- Windows Kernel Driver
- Msvcrt.dll
- arudino
- Windows Kernel
- 네트워크 바이트 오더
- 포너블
- 시스템해킹
- Windows
- pwnable
- 해킹
- 개발하기
- 윈도우 커널
- packet capture
- 윈도우 커널 디버깅
- Network Byte Order
Archives
- Today
- Total
미친해커
[Nintendo 3DS] hello-world 예제 코드분석(주석설명) 본문
반응형
hello-world 예제
hello-world 예제는 devkitPro를 설치하면 함께 다운로드되는 Nintendo 사의 게임기들의 예제 코드(프로젝트)중 하나 이다. 기본적으로 검은색 콘솔 중앙에 'Hello World!' 를 출력한다. 코드는 다음과 같다.
/*
Hello World example made by Aurelio Mannara for libctru
This code was modified for the last time on: 12/12/2014 21:00 UTC+1
*/
#include <3ds.h>
#include <stdio.h>
int main(int argc, char **argv)
{
gfxInitDefault();
//상단 화면을 콘솔 초기화합니다. 두 번째 인자로 NULL을 사용하면 기본 콘솔을 사용합니다.
consoleInit(GFX_TOP, NULL);
//커서를 15행과 19열로 이동한 다음 "Hello World!"를 출력합니다.
//커서를 이동하려면 "\x1b[r;cH"를 출력해야합니다. 여기서 r과 c는
//각각 커서를 이동할 행과 열입니다.
//상단 화면에는 30개의 행과 50개의 열이 있습니다.
//하단 화면에는 30개의 행과 40개의 열이 있습니다.
printf("\x1b[16;20HHello World!");
printf("\x1b[30;16HPress Start to exit.");
// 메인 루프
while (aptMainLoop())
{
//모든 입력을 스캔합니다. 이 작업은 프레임 마다 한 번 수행해야 합니다.
hidScanInput();
//hidKeysDown 은 방금 누른 버튼에 대한 정보를 반환합니다.
u32 kDown = hidKeysDown();
if (kDown & KEY_START) break; // 메뉴로 돌아가기 위해 메인 루프를 중단합니다.
// 프레임 버퍼 플러시 및 스왑
gfxFlushBuffers();
gfxSwapBuffers();
//Wait for VBlank
gspWaitForVBlank();
}
gfxExit();
return 0;
}
반응형
'Nintendo > 3DS' 카테고리의 다른 글
[Nintendo 3DS] 닌텐도 3DS 예제 컴파일하기 (0) | 2022.04.20 |
---|---|
[Nintendo 3DS] 닌텐도 3DS 개발환경 구축하기 (2) | 2022.04.19 |
Comments