finish system status

This commit is contained in:
optixx 2009-10-18 14:05:47 +02:00
parent a9a366895a
commit 67e02fb38e
9 changed files with 164 additions and 611 deletions

View File

@ -35,6 +35,7 @@
extern usb_transaction_t usb_trans; extern usb_transaction_t usb_trans;
extern system_t system;
extern const char *_rom[]; extern const char *_rom[];
extern const char _rom01[]; extern const char _rom01[];
@ -57,7 +58,6 @@ void usb_connect()
} }
void send_reset() void send_reset()
{ {
info_P(PSTR("Reset SNES\n")); info_P(PSTR("Reset SNES\n"));
@ -90,14 +90,23 @@ void set_rom_mode()
} }
} }
void boot_startup_rom(uint16_t init_delay) void boot_startup_rom(uint16_t init_delay)
{ {
uint8_t i; uint8_t i;
uint32_t addr = 0x000000; uint32_t addr = 0x000000;
info_P(PSTR("Fetch loader rom\n"));
system_set_bus_avr(); system_set_bus_avr();
system_snes_irq_off(); system_snes_irq_off();
system_set_rom_lorom(); system_set_rom_lorom();
//info_P(PSTR("Activate AVR bus\n"));
//avr_bus_active();
//info_P(PSTR("IRQ off\n"));
//snes_irq_lo();
//snes_irq_off();
//snes_lorom();
for (i=0; i<ROM_BUFFER_CNT; i++){ for (i=0; i<ROM_BUFFER_CNT; i++){
addr += rle_decode(_rom[i], _rom_size[i], addr); addr += rle_decode(_rom[i], _rom_size[i], addr);
} }
@ -110,8 +119,15 @@ void boot_startup_rom(uint16_t init_delay)
info(PSTR("crc=%x\n"),crc); info(PSTR("crc=%x\n"),crc);
#endif #endif
system_set_rom_hirom(); //snes_irq_lo();
//snes_irq_off();
//snes_hirom();
//snes_wr_disable();
system_set_bus_snes(); system_set_bus_snes();
system_set_rom_hirom();
system_set_wr_disable();
system_snes_irq_off();
system_send_snes_reset(); system_send_snes_reset();
_delay_ms(init_delay); _delay_ms(init_delay);
} }
@ -143,4 +159,5 @@ void transaction_status(){
info_P(PSTR("TX buffer %02i\n"),usb_trans.tx_remaining); info_P(PSTR("TX buffer %02i\n"),usb_trans.tx_remaining);
info_P(PSTR("RX buffer %02i\n"),usb_trans.rx_remaining); info_P(PSTR("RX buffer %02i\n"),usb_trans.rx_remaining);
info_P(PSTR("Syncerr %02i\n"),usb_trans.sync_errors); info_P(PSTR("Syncerr %02i\n"),usb_trans.sync_errors);
} }

View File

@ -22,9 +22,6 @@
#ifndef __COMMAND_H__ #ifndef __COMMAND_H__
#define __COMMAND_H__ #define __COMMAND_H__
void send_reset();
void send_irq();
void set_rom_mode();
void usb_connect(); void usb_connect();
void boot_startup_rom(uint16_t init_delay); void boot_startup_rom(uint16_t init_delay);
void banner(); void banner();

View File

@ -50,8 +50,8 @@
#define DO_CRC_CHECK_LOADER 0 #define DO_CRC_CHECK_LOADER 0
#define DO_CRC_CHECK 0 #define DO_CRC_CHECK 0
#define DO_SHM_SCRATCHPAD 1 #define DO_SHM_SCRATCHPAD 0
#define DO_SHM 1 #define DO_SHM 0
#define DO_TIMER 1 #define DO_TIMER 0
#endif #endif

View File

@ -56,7 +56,7 @@ extern FILE uart_stdout;
#endif #endif
extern system_t system; extern system_t system;
uint8_t debug_level = (DEBUG | DEBUG_USB | DEBUG_CRC | DEBUG_SHM ); uint8_t debug_level = (DEBUG | DEBUG_CRC);
usb_transaction_t usb_trans; usb_transaction_t usb_trans;
@ -263,10 +263,15 @@ int main(void)
usb_connect(); usb_connect();
sei(); sei();
while (1) { while (1) {
system_set_bus_avr();
system_set_wr_disable();
/*
avr_bus_active(); avr_bus_active();
info_P(PSTR("Activate AVR bus\n")); info_P(PSTR("Activate AVR bus\n"));
info_P(PSTR("Disable SNES WR\n")); info_P(PSTR("Disable SNES WR\n"));
snes_wr_disable(); snes_wr_disable();
*/
info_P(PSTR("USB poll\n")); info_P(PSTR("USB poll\n"));
while (usb_trans.req_state != REQ_STATUS_SNES) { while (usb_trans.req_state != REQ_STATUS_SNES) {
usbPoll(); usbPoll();
@ -289,6 +294,12 @@ int main(void)
crc_check_bulk_memory(0x000000, usb_trans.req_bank_size * usb_trans.req_bank_cnt, usb_trans.req_bank_size); crc_check_bulk_memory(0x000000, usb_trans.req_bank_size * usb_trans.req_bank_cnt, usb_trans.req_bank_size);
#endif #endif
system_set_rom_mode(&usb_trans);
system_set_wr_disable();
system_set_bus_snes();
system_send_snes_reset();
irq_stop();
/*
info_P(PSTR("-->Switch TO SNES\n")); info_P(PSTR("-->Switch TO SNES\n"));
set_rom_mode(); set_rom_mode();
snes_wr_disable(); snes_wr_disable();
@ -297,6 +308,7 @@ int main(void)
info_P(PSTR("Activate SNES bus\n")); info_P(PSTR("Activate SNES bus\n"));
irq_stop(); irq_stop();
send_reset(); send_reset();
*/
info_P(PSTR("Poll USB\n")); info_P(PSTR("Poll USB\n"));
while ((usb_trans.req_state != REQ_STATUS_AVR)) { while ((usb_trans.req_state != REQ_STATUS_AVR)) {
usbPoll(); usbPoll();
@ -304,15 +316,18 @@ int main(void)
shell_run(); shell_run();
#endif #endif
} }
info_P(PSTR("-->Switch TO AVR\n")); //info_P(PSTR("-->Switch TO AVR\n"));
shared_memory_init(); shared_memory_init();
irq_init();
if(usb_trans.loader_enabled) { if(usb_trans.loader_enabled) {
boot_startup_rom(500); boot_startup_rom(500);
} else { } else {
avr_bus_active(); system_set_bus_avr();
send_reset(); system_send_snes_reset();
//avr_bus_active();
//send_reset();
} }
irq_init();
} }
return 0; return 0;
} }

View File

@ -39,6 +39,7 @@
#include "crc.h" #include "crc.h"
#include "command.h" #include "command.h"
#include "shared_memory.h" #include "shared_memory.h"
#include "system.h"
@ -196,6 +197,7 @@ enum cmds { CMD_DUMP,
CMD_LOADER, CMD_LOADER,
CMD_RECONNECT, CMD_RECONNECT,
CMD_STATUS, CMD_STATUS,
CMD_SYS,
CMD_HELP CMD_HELP
}; };
@ -216,6 +218,7 @@ uint8_t cmdlist[][CMD_HELP] PROGMEM = {
{"LOADER"}, {"LOADER"},
{"RECONNECT"}, {"RECONNECT"},
{"STATUS"}, {"STATUS"},
{"SYS"},
{"HELP"}, {"HELP"},
}; };
@ -266,7 +269,8 @@ void shell_run(void)
}else if (strcmp_P((char*)t, (PGM_P)cmdlist[CMD_EXIT]) == 0) { }else if (strcmp_P((char*)t, (PGM_P)cmdlist[CMD_EXIT]) == 0) {
leave_application(); leave_application();
}else if (strcmp_P((char*)t, (PGM_P)cmdlist[CMD_RESET]) == 0) { }else if (strcmp_P((char*)t, (PGM_P)cmdlist[CMD_RESET]) == 0) {
send_reset(); //send_reset();
system_send_snes_reset();
}else if (strcmp_P((char*)t, (PGM_P)cmdlist[CMD_IRQ]) == 0) { }else if (strcmp_P((char*)t, (PGM_P)cmdlist[CMD_IRQ]) == 0) {
info_P(PSTR("Send IRQ\n")); info_P(PSTR("Send IRQ\n"));
snes_irq_on(); snes_irq_on();
@ -321,16 +325,12 @@ void shell_run(void)
usb_connect(); usb_connect();
}else if (strcmp_P((char*)t, (PGM_P)cmdlist[CMD_STATUS]) == 0) { }else if (strcmp_P((char*)t, (PGM_P)cmdlist[CMD_STATUS]) == 0) {
transaction_status(); transaction_status();
}else if (strcmp_P((char*)t, (PGM_P)cmdlist[CMD_SYS]) == 0) {
system_status();
}else if (strcmp_P((char*)t, (PGM_P)cmdlist[CMD_HELP]) == 0) { }else if (strcmp_P((char*)t, (PGM_P)cmdlist[CMD_HELP]) == 0) {
shell_help(); shell_help();
} }
prompt(); prompt();
/*
dias
set irq vector
set reset vector
dump cart header
*/
} }

View File

@ -104,16 +104,22 @@ void system_set_bus_avr()
avr_bus_active(); avr_bus_active();
info_P(PSTR("Activate AVR bus\n")); info_P(PSTR("Activate AVR bus\n"));
system.bus_mode = MODE_AVR; system.bus_mode = MODE_AVR;
}
void system_set_wr_disable(){
snes_wr_disable(); snes_wr_disable();
system.wr_line = WR_DISABLE; system.wr_line = WR_DISABLE;
info_P(PSTR("Disable SNES WR\n")); info_P(PSTR("Disable SNES WR\n"));
} }
void system_set_wr_enable(){
snes_wr_enable();
system.wr_line = WR_ENABLE;
info_P(PSTR("Enable SNES WR\n"));
}
void system_set_bus_snes() void system_set_bus_snes()
{ {
snes_wr_disable();
system.wr_line = WR_DISABLE;
info_P(PSTR("Disable SNES WR\n"));
snes_bus_active(); snes_bus_active();
system.bus_mode = MODE_SNES; system.bus_mode = MODE_SNES;
info_P(PSTR("Activate SNES bus\n")); info_P(PSTR("Activate SNES bus\n"));
@ -146,3 +152,35 @@ void system_set_rom_hirom()
system.rom_mode = HIROM; system.rom_mode = HIROM;
info_P(PSTR("Set SNES hirom \n")); info_P(PSTR("Set SNES hirom \n"));
} }
char* system_status_helper(uint8_t val){
if (val)
return "ON";
else
return "OFF";
}
char* system_status_bus(uint8_t val){
if (val)
return "SNES";
else
return "AVR";
}
char* system_status_rom(uint8_t val){
if (val)
return "HIROM";
else
return "LOROM";
}
void system_status(){
info_P(PSTR("\nBus Mode %s\n"),system_status_bus(system.bus_mode));
info_P(PSTR("Rom Mode %s\n"),system_status_rom(system.rom_mode));
info_P(PSTR("Reset Line %s\n"),system_status_helper(system.reset_line));
info_P(PSTR("IRQ Line %s\n"),system_status_helper(system.irq_line));
info_P(PSTR("WR Line %s\n"),system_status_helper(system.wr_line));
info_P(PSTR("Reset IRQ %s\n"),system_status_helper(system.reset_irq));
info_P(PSTR("SNES Reset 0x%02x\n"),system.snes_reset_count);
info_P(PSTR("AVR Reset 0x%02x\n"),system.avr_reset_count);
}

View File

@ -49,6 +49,9 @@ void system_set_rom_mode(usb_transaction_t *usb_trans);
void system_set_rom_hirom(void); void system_set_rom_hirom(void);
void system_set_rom_lorom(void); void system_set_rom_lorom(void);
void system_snes_irq_off(void); void system_snes_irq_off(void);
void system_set_wr_disable(void);
void system_set_wr_enable(void);
void system_status();
#endif #endif

View File

@ -26,30 +26,14 @@
<key>caret</key> <key>caret</key>
<dict> <dict>
<key>column</key> <key>column</key>
<integer>0</integer> <integer>18</integer>
<key>line</key> <key>line</key>
<integer>88</integer> <integer>42</integer>
</dict> </dict>
<key>columnSelection</key>
<false/>
<key>firstVisibleColumn</key> <key>firstVisibleColumn</key>
<integer>0</integer> <integer>0</integer>
<key>firstVisibleLine</key> <key>firstVisibleLine</key>
<integer>56</integer> <integer>95</integer>
<key>selectFrom</key>
<dict>
<key>column</key>
<integer>0</integer>
<key>line</key>
<integer>56</integer>
</dict>
<key>selectTo</key>
<dict>
<key>column</key>
<integer>0</integer>
<key>line</key>
<integer>88</integer>
</dict>
</dict> </dict>
<key>avr/usbload/command.h</key> <key>avr/usbload/command.h</key>
<dict> <dict>
@ -65,347 +49,49 @@
<key>firstVisibleLine</key> <key>firstVisibleLine</key>
<integer>0</integer> <integer>0</integer>
</dict> </dict>
<key>avr/usbload/config.h</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>5</integer>
<key>line</key>
<integer>45</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>10</integer>
</dict>
<key>avr/usbload/crc.c</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>0</integer>
<key>line</key>
<integer>59</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>15</integer>
</dict>
<key>avr/usbload/debug.c</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>5</integer>
<key>line</key>
<integer>26</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>0</integer>
</dict>
<key>avr/usbload/debug.h</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>0</integer>
<key>line</key>
<integer>0</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>2</integer>
</dict>
<key>avr/usbload/dump.c</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>15</integer>
<key>line</key>
<integer>28</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>36</integer>
</dict>
<key>avr/usbload/dump.h</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>0</integer>
<key>line</key>
<integer>3</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>0</integer>
</dict>
<key>avr/usbload/irq.c</key> <key>avr/usbload/irq.c</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>1</integer>
<key>line</key>
<integer>62</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>24</integer>
</dict>
<key>avr/usbload/irq.h</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>19</integer>
<key>line</key>
<integer>26</integer>
</dict>
<key>columnSelection</key>
<false/>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>0</integer>
<key>selectFrom</key>
<dict>
<key>column</key>
<integer>5</integer>
<key>line</key>
<integer>26</integer>
</dict>
<key>selectTo</key>
<dict>
<key>column</key>
<integer>22</integer>
<key>line</key>
<integer>26</integer>
</dict>
</dict>
<key>avr/usbload/loader.c</key>
<dict> <dict>
<key>caret</key> <key>caret</key>
<dict> <dict>
<key>column</key> <key>column</key>
<integer>0</integer> <integer>0</integer>
<key>line</key> <key>line</key>
<integer>0</integer> <integer>54</integer>
</dict> </dict>
<key>firstVisibleColumn</key> <key>firstVisibleColumn</key>
<integer>0</integer> <integer>0</integer>
<key>firstVisibleLine</key> <key>firstVisibleLine</key>
<integer>734</integer> <integer>26</integer>
</dict> </dict>
<key>avr/usbload/main.c</key> <key>avr/usbload/main.c</key>
<dict> <dict>
<key>caret</key> <key>caret</key>
<dict> <dict>
<key>column</key> <key>column</key>
<integer>0</integer> <integer>18</integer>
<key>line</key> <key>line</key>
<integer>299</integer> <integer>269</integer>
</dict> </dict>
<key>columnSelection</key> <key>columnSelection</key>
<false/> <false/>
<key>firstVisibleColumn</key> <key>firstVisibleColumn</key>
<integer>0</integer> <integer>0</integer>
<key>firstVisibleLine</key> <key>firstVisibleLine</key>
<integer>190</integer> <integer>247</integer>
<key>selectFrom</key> <key>selectFrom</key>
<dict> <dict>
<key>column</key> <key>column</key>
<integer>0</integer> <integer>8</integer>
<key>line</key> <key>line</key>
<integer>292</integer> <integer>269</integer>
</dict> </dict>
<key>selectTo</key> <key>selectTo</key>
<dict> <dict>
<key>column</key> <key>column</key>
<integer>0</integer>
<key>line</key>
<integer>299</integer>
</dict>
</dict>
<key>avr/usbload/pwm.c</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>0</integer>
<key>line</key>
<integer>100</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>33</integer>
</dict>
<key>avr/usbload/pwm.h</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>20</integer>
<key>line</key>
<integer>33</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>0</integer>
</dict>
<key>avr/usbload/requests.h</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>0</integer>
<key>line</key>
<integer>0</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>13</integer>
</dict>
<key>avr/usbload/rle.c</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>40</integer>
<key>line</key>
<integer>99</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>55</integer>
</dict>
<key>avr/usbload/rle.h</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>0</integer>
<key>line</key>
<integer>0</integer>
</dict>
<key>columnSelection</key>
<false/>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>0</integer>
<key>selectFrom</key>
<dict>
<key>column</key>
<integer>17</integer>
<key>line</key>
<integer>21</integer>
</dict>
<key>selectTo</key>
<dict>
<key>column</key>
<integer>0</integer>
<key>line</key>
<integer>0</integer>
</dict>
</dict>
<key>avr/usbload/shared_memory.c</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>14</integer>
<key>line</key>
<integer>235</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>210</integer>
</dict>
<key>avr/usbload/shared_memory.h</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>52</integer>
<key>line</key>
<integer>50</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>29</integer>
</dict>
<key>avr/usbload/shell.c</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>0</integer>
<key>line</key>
<integer>0</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>289</integer>
</dict>
<key>avr/usbload/shell.h</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>22</integer>
<key>line</key>
<integer>23</integer> <integer>23</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>0</integer>
</dict>
<key>avr/usbload/sram.c</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>9</integer>
<key>line</key> <key>line</key>
<integer>36</integer> <integer>269</integer>
</dict> </dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>3</integer>
</dict>
<key>avr/usbload/sram.h</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>9</integer>
<key>line</key>
<integer>198</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>178</integer>
</dict> </dict>
<key>avr/usbload/system.c</key> <key>avr/usbload/system.c</key>
<dict> <dict>
@ -414,152 +100,56 @@
<key>column</key> <key>column</key>
<integer>0</integer> <integer>0</integer>
<key>line</key> <key>line</key>
<integer>85</integer> <integer>119</integer>
</dict> </dict>
<key>firstVisibleColumn</key> <key>firstVisibleColumn</key>
<integer>0</integer> <integer>0</integer>
<key>firstVisibleLine</key> <key>firstVisibleLine</key>
<integer>48</integer> <integer>78</integer>
</dict> </dict>
<key>avr/usbload/system.h</key> <key>avr/usbload/system.h</key>
<dict> <dict>
<key>caret</key> <key>caret</key>
<dict> <dict>
<key>column</key> <key>column</key>
<integer>0</integer> <integer>12</integer>
<key>line</key> <key>line</key>
<integer>25</integer> <integer>33</integer>
</dict> </dict>
<key>columnSelection</key>
<false/>
<key>firstVisibleColumn</key> <key>firstVisibleColumn</key>
<integer>0</integer> <integer>0</integer>
<key>firstVisibleLine</key> <key>firstVisibleLine</key>
<integer>0</integer> <integer>1</integer>
</dict> <key>selectFrom</key>
<key>avr/usbload/timer.c</key>
<dict>
<key>caret</key>
<dict> <dict>
<key>column</key> <key>column</key>
<integer>6</integer>
<key>line</key>
<integer>80</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>47</integer>
</dict>
<key>avr/usbload/timer.h</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>0</integer>
<key>line</key>
<integer>29</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>0</integer>
</dict>
<key>avr/usbload/uart.c</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>0</integer>
<key>line</key>
<integer>20</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>26</integer>
</dict>
<key>avr/usbload/usb_bulk.c</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>14</integer>
<key>line</key>
<integer>71</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>36</integer>
</dict>
<key>avr/usbload/usb_bulk.h</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>0</integer>
<key>line</key>
<integer>0</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>0</integer>
</dict>
<key>avr/usbload/usbconfig.h</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>42</integer>
<key>line</key>
<integer>129</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>88</integer>
</dict>
<key>avr/usbload/util.c</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>0</integer>
<key>line</key>
<integer>116</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>84</integer>
</dict>
<key>avr/usbload/util.h</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>1</integer>
<key>line</key>
<integer>29</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>0</integer>
</dict>
<key>scripts/check_rle.py</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>14</integer>
<key>line</key>
<integer>9</integer> <integer>9</integer>
<key>line</key>
<integer>33</integer>
</dict>
<key>selectTo</key>
<dict>
<key>column</key>
<integer>19</integer>
<key>line</key>
<integer>33</integer>
</dict>
</dict>
<key>scripts/conv_rle.py</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>0</integer>
<key>line</key>
<integer>86</integer>
</dict> </dict>
<key>firstVisibleColumn</key> <key>firstVisibleColumn</key>
<integer>0</integer> <integer>0</integer>
<key>firstVisibleLine</key> <key>firstVisibleLine</key>
<integer>0</integer> <integer>49</integer>
</dict> </dict>
<key>snes/banktest/LoadGraphics.asm</key> <key>snes/banktest/LoadGraphics.asm</key>
<dict> <dict>
@ -589,149 +179,16 @@
<key>firstVisibleLine</key> <key>firstVisibleLine</key>
<integer>211</integer> <integer>211</integer>
</dict> </dict>
<key>tools/qdinc/opendevice.h</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>0</integer>
<key>line</key>
<integer>0</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>0</integer>
</dict>
<key>tools/qdinc/qdinc.c</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>0</integer>
<key>line</key>
<integer>26</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>15</integer>
</dict>
<key>tools/qdinc/qdinc.h</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>0</integer>
<key>line</key>
<integer>0</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>3</integer>
</dict>
<key>tools/ucon64/src/backup/quickdev16.c</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>30</integer>
<key>line</key>
<integer>71</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>181</integer>
</dict>
<key>tools/ucon64/src/backup/smsgg-pro.h</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>0</integer>
<key>line</key>
<integer>0</integer>
</dict>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>0</integer>
</dict>
<key>tools/ucon64/src/console/snes.c</key>
<dict>
<key>caret</key>
<dict>
<key>column</key>
<integer>0</integer>
<key>line</key>
<integer>2695</integer>
</dict>
<key>columnSelection</key>
<false/>
<key>firstVisibleColumn</key>
<integer>0</integer>
<key>firstVisibleLine</key>
<integer>3814</integer>
<key>selectFrom</key>
<dict>
<key>column</key>
<integer>1</integer>
<key>line</key>
<integer>2887</integer>
</dict>
<key>selectTo</key>
<dict>
<key>column</key>
<integer>0</integer>
<key>line</key>
<integer>2695</integer>
</dict>
</dict>
</dict> </dict>
<key>openDocuments</key> <key>openDocuments</key>
<array> <array>
<string>avr/usbload/sram.c</string> <string>scripts/conv_rle.py</string>
<string>avr/usbload/main.c</string> <string>avr/usbload/main.c</string>
<string>tools/qdinc/qdinc.c</string>
<string>tools/qdinc/opendevice.h</string>
<string>tools/qdinc/qdinc.h</string>
<string>avr/usbload/system.h</string>
<string>avr/usbload/sram.h</string>
<string>avr/usbload/usb_bulk.c</string>
<string>avr/usbload/usbconfig.h</string>
<string>avr/usbload/requests.h</string>
<string>avr/usbload/debug.h</string>
<string>avr/usbload/shell.c</string>
<string>tools/ucon64/src/backup/smsgg-pro.h</string>
<string>tools/ucon64/src/console/snes.c</string>
<string>tools/ucon64/src/backup/quickdev16.c</string>
<string>avr/usbload/config.h</string>
<string>avr/usbload/timer.c</string>
<string>avr/usbload/rle.c</string>
<string>avr/usbload/pwm.c</string>
<string>avr/usbload/loader.c</string>
<string>scripts/check_rle.py</string>
<string>avr/usbload/pwm.h</string>
<string>avr/usbload/shared_memory.c</string>
<string>avr/usbload/system.c</string>
<string>avr/usbload/command.c</string>
<string>avr/usbload/command.h</string> <string>avr/usbload/command.h</string>
<string>avr/usbload/system.c</string>
<string>avr/usbload/system.h</string>
<string>avr/usbload/command.c</string>
<string>avr/usbload/irq.c</string> <string>avr/usbload/irq.c</string>
<string>avr/usbload/irq.h</string>
<string>avr/usbload/crc.c</string>
<string>avr/usbload/dump.c</string>
<string>avr/usbload/debug.c</string>
<string>avr/usbload/dump.h</string>
<string>avr/usbload/uart.c</string>
<string>avr/usbload/util.c</string>
<string>avr/usbload/timer.h</string>
<string>avr/usbload/util.h</string>
<string>avr/usbload/usb_bulk.h</string>
<string>avr/usbload/rle.h</string>
<string>avr/usbload/shell.h</string>
<string>avr/usbload/shared_memory.h</string>
</array> </array>
<key>showFileHierarchyDrawer</key> <key>showFileHierarchyDrawer</key>
<false/> <false/>
@ -760,6 +217,21 @@
</dict> </dict>
</dict> </dict>
</dict> </dict>
<key>packages</key>
<dict>
<key>isExpanded</key>
<true/>
<key>subItems</key>
<dict>
<key>huffman</key>
<dict>
<key>isExpanded</key>
<true/>
<key>subItems</key>
<dict/>
</dict>
</dict>
</dict>
<key>scripts</key> <key>scripts</key>
<dict> <dict>
<key>isExpanded</key> <key>isExpanded</key>
@ -767,6 +239,13 @@
<key>subItems</key> <key>subItems</key>
<dict/> <dict/>
</dict> </dict>
<key>snes</key>
<dict>
<key>isExpanded</key>
<true/>
<key>subItems</key>
<dict/>
</dict>
<key>tools</key> <key>tools</key>
<dict> <dict>
<key>isExpanded</key> <key>isExpanded</key>

View File

@ -1,2 +1,6 @@
SDcard header SDcard header
Add structs for machine state Add structs for machine state
Shell: dump cart header
Shell: dump and set irq vector
Shell: Dump and set reset vector
verbose system status values