Compare commits
2 Commits
37cfca1482
...
04f0fe2c7b
Author | SHA1 | Date | |
---|---|---|---|
![]() |
04f0fe2c7b | ||
![]() |
dc23e8d7ed |
11
src/events.c
11
src/events.c
@ -9,6 +9,7 @@ extern uint8_t showHelp;
|
||||
extern uint8_t displayMmap;
|
||||
extern uint8_t documentReload;
|
||||
|
||||
extern char *reloadExecute;
|
||||
extern uint32_t renderMemory[];
|
||||
|
||||
extern int openFile();
|
||||
@ -27,8 +28,8 @@ void pollEvents(){
|
||||
while (SDL_PollEvent(&event)){
|
||||
switch(event.type){
|
||||
case SDL_QUIT:
|
||||
printf("Exited.\n");
|
||||
exit(0);
|
||||
break;
|
||||
|
||||
case SDL_KEYDOWN:
|
||||
switch (event.key.keysym.scancode){
|
||||
@ -49,8 +50,16 @@ void pollEvents(){
|
||||
break;
|
||||
|
||||
case SDL_SCANCODE_F5: /* CPU Reset */
|
||||
if (reloadExecute[0]) {
|
||||
if (system(reloadExecute)){
|
||||
printf("Shell command failed!\n");
|
||||
goto skip;
|
||||
}
|
||||
}
|
||||
if (documentReload) openFile();
|
||||
resetSystem();
|
||||
|
||||
skip:
|
||||
break;
|
||||
|
||||
case SDL_SCANCODE_F6: /* Scale -- */
|
||||
|
@ -40,6 +40,7 @@ unsigned long tickTrigger = 0;
|
||||
|
||||
char debugString[512];
|
||||
char snapshotFile[32];
|
||||
char *reloadExecute;
|
||||
char *inputFile;
|
||||
|
||||
int openFile(){
|
||||
@ -78,6 +79,7 @@ void fetchArgs(int argc, char *argv[]){
|
||||
//else if (!strcmp(argv[i], "--snapshot")) snapshotFile = &argv[i];
|
||||
else if (!strcmp(argv[i], "--fps")) FPS = atoi(argv[++i]);
|
||||
else if (!strcmp(argv[i], "--enable-reload")) documentReload = 1;
|
||||
else if (!strcmp(argv[i], "--reload-execute")) reloadExecute = argv[++i];
|
||||
else {
|
||||
inputFile = argv[i];
|
||||
if (openFile()){
|
||||
|
@ -57,7 +57,7 @@ void write6502(uint16_t address, uint8_t value){
|
||||
case VIDADDRS ... VIDADDRS + PAGESIZE:
|
||||
switch ((address - VIDADDRS) % 4){
|
||||
case 0: /* Video X Register */
|
||||
videoX = value;
|
||||
videoX = value & 0b01111111;
|
||||
break;
|
||||
case 1: /* Video Y Register */
|
||||
videoY = value;
|
||||
|
Loading…
Reference in New Issue
Block a user