]> Chaos Git - corbenik/corbenik.git/commitdiff
Merge branch 'master' into wip/malloc
authorchaoskagami <chaos.kagami@gmail.com>
Wed, 3 Aug 2016 10:03:12 +0000 (06:03 -0400)
committerchaoskagami <chaos.kagami@gmail.com>
Wed, 3 Aug 2016 10:05:14 +0000 (06:05 -0400)
1  2 
external/libctr9
include/option.h
source/display.c
source/firm/firm.c
source/interp.c
source/main.c
source/menu.c
source/option.c
source/patcher.c
source/screeninit.c
source/std/draw.c

index 1629815c5a08ff95c3b0d592bbf9583c63cd124b,0cb25b034cb07a96077f1b0af4fd84960fdcd151..eb78012240776d8143a2c6eede4802410d606f85
@@@ -1,1 -1,1 +1,1 @@@
- Subproject commit 1629815c5a08ff95c3b0d592bbf9583c63cd124b
 -Subproject commit 0cb25b034cb07a96077f1b0af4fd84960fdcd151
++Subproject commit eb78012240776d8143a2c6eede4802410d606f85
Simple merge
Simple merge
index f8ab2dae14bf4b967fb89e97828db441b9c76e62,07a03b8fc13f194a50cd87a6b535892210bf1af3..698ff88a127398d483f10418b0c3987e283c3c6c
@@@ -37,10 -37,11 +37,11 @@@ int decrypt_arm9bin(arm9bin_h *header, 
  void dump_firm(firm_h** buffer, uint8_t index) {
      if (*buffer != NULL) return;
  
-     uint32_t firm_offset = 0x0B130000 + (index % 2) * 0x400000,
-              firm_size   = 0x00100000; // 1MB, because
+     // NOTE - Cast, because GCC is making assumptions about 'index'.
+     uint32_t firm_offset = (uint32_t)(0x0B130000 + (index % 2) * 0x400000),
+              firm_b_size = 0x00100000; // 1MB, because
  
-     buffer[0] = malloc(firm_size);
 -    buffer[0] = static_allocate(firm_b_size);
++    buffer[0] = malloc(firm_b_size);
  
      uint8_t ctr[0x10],
              cid[0x10],
diff --cc source/interp.c
Simple merge
diff --cc source/main.c
index cc8844cf9624363727d88bcb6e90a012daa646ea,9a728e1fa7366d4fe628d087099335ac8bb5dec2..3da3db262e612dc93e6d1dd0c4dc60b7eb6feebc
@@@ -33,25 -49,11 +49,11 @@@ main(int argc, char** argv
  
      ctr_screen_enable_backlight(CTR_SCREEN_BOTH);
  
-     set_font(PATH_TERMFONT);
      install_interrupts(); // Get some free debug info.
  
-     if (c) {
-         // Failed to mount SD. Bomb out.
-         abort("Failed to mount SD card.\n");
-     }
-     if (argc >= 1 && argc < 2) {
-         // Valid argc passed.
-         fprintf(stderr, "Chainloaded. Path: %s\n", argv[0]);
-     }
-     load_config(); // Load configuration.
      if (CFG_BOOTENV == 7) {
          fprintf(stderr, "Rebooted from AGB, disabling EmuNAND.\n");
 -        config.options[OPTION_EMUNAND] = 0;
 +        config->options[OPTION_EMUNAND] = 0;
      }
  
      // Autoboot. Non-standard code path.
diff --cc source/menu.c
Simple merge
diff --cc source/option.c
index 1d8d710f175447d8a0bc36b9733faf8629d469db,29b46d552a01570d8c4b75a6ca78c6c4d93e559e..88924d5ed040251f3d9555afb0e1ab7544ad1f28
@@@ -9,11 -9,11 +9,12 @@@ void list_patches_build(char *name, in
  void
  regenerate_config()
  {
 -    memset(&config, 0, sizeof(config));
 -    memcpy(&(config.magic), CONFIG_MAGIC, 4);
 -    config.config_ver = config_version;
 -    config.options[OPTION_ACCENT_COLOR] = 2;
 -    config.options[OPTION_BRIGHTNESS]   = 3;
 +    for(int i=0; i < 4; i++)
 +        config->magic[i] = CONFIG_MAGIC[i];
 +
 +    config->config_ver = config_version;
 +    config->options[OPTION_ACCENT_COLOR] = 2;
++    config->options[OPTION_BRIGHTNESS]   = 3;
  
      if (!(conf_handle = fopen(PATH_CONFIG, "w")))
          abort("Failed to open config for write?\n");
@@@ -99,10 -96,10 +100,10 @@@ load_config(
              regenerate_config();
          }
  
 -        if (config.config_ver < config_version) {
 +        if (config->config_ver < config_version) {
              fprintf(BOTTOM_SCREEN, "Config file has outdated version:\n"
                                     "  %s\n"
-                                    "Regenerating with defaults...\n",
+                                    "Regenerating with defaults.\n",
                      PATH_CONFIG);
              f_unlink(PATH_CONFIG);
              regenerate_config();
@@@ -129,10 -124,12 +128,12 @@@ save_config(
      if (!(conf_handle = fopen(PATH_CONFIG, "w")))
          abort("Failed to open config for write?\n");
  
 -    config.options[OPTION_RECONFIGURED] = 0; // This should not persist to disk.
 +    config->options[OPTION_RECONFIGURED] = 0; // This should not persist to disk.
  
 -    fwrite(&config, 1, sizeof(config), conf_handle);
 +    fwrite(config, 1, sizeof(struct config_file), conf_handle);
      fclose(conf_handle);
  
 -    config.options[OPTION_RECONFIGURED] = 1; // Save caches on boot.
 +    config->options[OPTION_RECONFIGURED] = 1; // Save caches on boot.
+     fprintf(stderr, "Saved config successfully.\n");
  }
Simple merge
index 2348aafcdda8cbc2b6a40330ac46a138d14ed979,72dc48e14273ff05e93ca280c6512925da98fd7f..9b1e255e95ec935796b5c57b5bd4ada51d6a3520
@@@ -30,7 -30,9 +30,9 @@@ screen_mode(uint32_t mode
      if (PDN_GPU_CNT == 1)
          screenInitAddress[2] = 0; // Do a full init.
  
-     screenInitAddress[3] = 0xFF; // Brightness
+       // FIXME - God awful syntactical hack.
 -    screenInitAddress[3] = ("\x40\x8F\xC0\xFF")[config.options[OPTION_BRIGHTNESS]];
++    screenInitAddress[3] = ("\x40\x8F\xC0\xFF")[config->options[OPTION_BRIGHTNESS]];
      screenInitAddress[4] = mode; // Mode
  
      *a11_entry = (uint32_t)screenInitAddress;
Simple merge