Урок 2: Создание первой собственной программы, глава 3

Вашему вниманию представляется третья часть урока 2. За плечами пройденные первая и вторая главы. Прежде чем приступить к новому этапу, возвратитесь и вспомните предыдущие главы.

Нам необходимо добавить две строки для того, чтобы использовать экран и применить те функции, которые вставляем в код нашей программы ранее (именно те, которые вам не надо было понимать). По сути, вам не нужно понимать сущность их функционирования. Однако вы должны знать, как их задавать, что на самом деле очень просто. Вы определяете имя функции в круглых скобках (данному процессу мы уделим внимание чуть позднее).

Помните, что каждая строка должна завершаться точкой с запятой. Причина заключается в том, что компилятор не видит пробел (пустое место). Между строками у вас может быть хоть 100 пробелов, и компилятору будет все равно. Это довольно удобно, поскольку вы сможете форматировать код так, как вам будет удобно. Вы сможете собрать в одну линию все строки или поставить большое количество пробелов. Но, чтобы закончить процесс в строке, вы должны использовать точку с запятой. Добавьте эти две строки в вашу программу для настройки:

pspDebugScreenInit();
SetupCallbacks();

Теперь пришло время для написания кода, действие которого мы вскоре увидим. Помните, что мы определи «pspDebugScreenPrintf» как «printf». Теперь мы используем данную функцию. Благодаря функции «printf» мы сможем напечатать текст на экране. При этом применяем данную функцию с неким параметром (в нашем случае текстовым), который нам понадобится после написания самой функции. «Printf» является очень мощной функцией, так как параметром в качестве параметра может быть не только текст, но и другие значения (эти особенности мы рассмотрим в следующих уроках). А пока мы просто введем «Hello Word»:

printf("Hello World");


После этого «printf» выводит текст на экран. Теперь нам необходимо завершить некоторые процессы программы, чтобы наш код был полностью готов и мы смогли увидеть полученный результат. Иначе программа или выкинет нас в меню, или зависнет. Поэтому добавим следующую строку для приостановки программы:

sceKernelSleepThread();


Данная строка остановит программу до того момента, как будет нажата кнопка «Home» и пользователь будет отправлен в операционную систему PSP. Теперь присвоим нашей функции возвратное значение («int main()»). Мы уже сообщили компилятору, что это будет целое число. Так что вернем \’0\’ (это ноль, а не буква \’o\’):

return 0;


И завершаем нашу функцию скобкой:

}


Ну что ж, программа готова! Сейчас мы должны ее скомпилировать. Для тех, кто использует второй способ, то есть MinPSPW и Eclipse (или любую другую IDE) ничего создавать уже не нужно, благо все есть в заготовках, которые мы открыли и исправили еще в первой части данного урока. Те же, кто использует Cygwin должны в том же каталоге (директории) создать файл «Makefile» (без какого-либо расширения), открыть его в текстовом редакторе и ввести в этом файле следующие строки:

TARGET = hello
OBJS = main.o

CFLAGS = -O2 -G0 -Wall
CXXFLAGS = $(CFLAGS) -fno-exceptions -fno-rtti
ASFLAGS = $(CFLAGS)

EXTRA_TARGETS = EBOOT.PBP
PSP_EBOOT_TITLE = Hello World

PSPSDK=$(shell psp-config —pspsdk-path)
include $(PSPSDK)/lib/build.mak


Тем же, кто использует заготовки необходимо лишь подправить строки TARGET = и PSP_EBOOT_TITLE =. Вы можете использовать «Makefile» в качестве основы создания всех ваших простых программок. В некоторых случаях вам нужно будет добавить библиотеки или что-нибудь еще к этому файлу, но это все довольно просто. Как правило, мы сообщаем компилятору, что нужно делать с программой, которую будет читать ваша PSP. Например, вы можете вместо «Hello Word» назвать программы таким образом: Строка «PSP_EBOOT_TITLE = Hello World» отвечает за имя программы, которое появится в игровом меню PSP, в нашем случае это будет «Hello Word», но вы можете переназвать данную строку по своему усмотрению.

Для тех, кто выбрал первый способ: Теперь откройте CYGWIN Bash и «cd» и перейдите в папку с программой «projects/helloworld». Тип «make» и командный процессор должны показать некоторую информацию, которая покажет допущенные ошибки в коде, в результате чего он не смог быть скомпилирован. Обычно ошибки состоят в том, что вы поставили неправильные знаки препинания или наоборот не поставили (точки, запятые, точка с запятой). Запомните, что если у вас прошивка 2.xx и выше, то наберите «make «, если прошивка 1.5 — «make kxploit «.
Для тех, кто выбрал второй способ: Нажмите Ctrl+B, чтобы скомпоновать все файлы в цельный проект.

Если вы все сделали без ошибок, то примите мои поздравления! Вы успешно написали и скомпилировали ваше первое приложение для PSP. Я уверен, что вы с нетерпением хотите запустить свою программу. Поместите «C:/cygwin/home/yourUserName/projects/helloworld/EBOOT.PBP «(для тех, кто использует первый способ) или то место, которое вы выбрали для хранения ваших проектов/название первой программы/EBOOT.PBP (для тех, кто использует второй способ) на ваш PSP так же, как и другие вновь создаваемые приложения, и наслаждайтесь ими сколько угодно!

Откройте урок 3, чтобы узнать еще больше о программировании на PSP. В следующей части учебных материалов вы познакомитесь с такими понятиями, как операторы, цикл, «ввод кнопок действий».

Не забудьте подписаться на RSS нашего сайта (или хотя бы занести сайт в закладки в браузере), чтобы быть в курсе и не пропустить обновления нашего курса.

Если вам понравились эти уроки и у вас есть лишняя пара баксов, вы можете отблагодарить автора или соавторов курса Или, если у вас есть свой веб-сайт, разместите ссылку на этот урок.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: