Прежде чем я go во что-либо, позвольте мне сначала порекомендовать использовать ссылку Discord, прикрепленную к этому репо, discord.gg/27JtCWs. Я сделаю все возможное, чтобы ответить на это, но я определенно не самый осведомленный о стандартах и типичном поведении для общего кодирования. Мой опыт важен только потому, что я тесно сотрудничаю с некоторыми людьми, связанными с декомпиляцией.
1 & 2. Я не считаю, что это нормальное занятие, но важно помнить этот момент репозитория позволяет легко вносить изменения в кодовую базу, сохраняя при этом способность компилировать ПЗУ 1: 1 из SM64. Разделение файла облегчает поиск нужных мест, хотя этот конкретный еще не назван.
Таким образом, файлы c. c являются прославленными заголовочными файлами, просто вставляя их код в это место. Он называется. c файлом, потому что это своего рода C, просто не является допустимым C файлом. Вот почему это .in c. c, поскольку оно включено>
Это стандартный неподписанный символ, это правильно. Это можно найти в types.h. Это сделано потому, что на самом деле это просто импорт группы данных, которые можно прочитать отдельно. Этот конкретный файл отсутствует в репозитории, но если вы извлекаете ресурсы, вы можете видеть, что это вставляемое изображение. Данные изображения просто разделяются на u8 и помещаются туда, что позволяет одновременно извлекать / вставлять и более легко редактировать.
ALIGNED8 для компилятора. Компилятор IDO 5.7, который использует репозиторий, часто выравнивает вещи в выводе ПЗУ, а директива ALIGN8 говорит ему заполнить до 8 байтов. Если ALIGNED8 не было, он потенциально мог бы вставить эти данные слишком рано, что приведет к смещению ПЗУ.
Надеюсь, я не допустил ошибок, и это помогает. Просто важно помнить, что весь GitHub на самом деле не является типичным, так как он меньше беспокоится о внутренней согласованности и больше беспокоится о внешней (ROM) согласованности, что часто означает, что иногда решения нужно взламывать вместе, чтобы функциональность. Если у вас есть дополнительные вопросы, я снова рекомендую задавать их в Discord, поскольку эти парни гораздо более информированы, чем я.