- [NEW] Càrrega de disks des del debuger
- [FIX] Al carregar un nou disk s'alliberava mal la memòria
This commit is contained in:
@@ -7,6 +7,7 @@
|
|||||||
#include "zx_ula.h"
|
#include "zx_ula.h"
|
||||||
#include "zx_speaker.h"
|
#include "zx_speaker.h"
|
||||||
#include "zx_tape.h"
|
#include "zx_tape.h"
|
||||||
|
#include "zx_disk.h"
|
||||||
#include "ui.h"
|
#include "ui.h"
|
||||||
#include "ui_window.h"
|
#include "ui_window.h"
|
||||||
#include "zx_screen.h"
|
#include "zx_screen.h"
|
||||||
@@ -906,6 +907,14 @@ namespace z80debug
|
|||||||
} else if (strcmp(cmd, "play")==0) {
|
} else if (strcmp(cmd, "play")==0) {
|
||||||
zx_tape::play();
|
zx_tape::play();
|
||||||
}
|
}
|
||||||
|
} else if (strcmp(cmd, "disk")==0) {
|
||||||
|
getcmd();
|
||||||
|
if (strcmp(cmd, "load")==0) {
|
||||||
|
getcmd();
|
||||||
|
char filename[256];
|
||||||
|
strcpy(filename, cmd);
|
||||||
|
zx_disk::load(filename);
|
||||||
|
}
|
||||||
} else if (strcmp(cmd, "poke")==0) {
|
} else if (strcmp(cmd, "poke")==0) {
|
||||||
getcmd();
|
getcmd();
|
||||||
int address = getnum(cmd);
|
int address = getnum(cmd);
|
||||||
|
|||||||
@@ -109,7 +109,7 @@ namespace zx_disk
|
|||||||
if (disk.tracks) {
|
if (disk.tracks) {
|
||||||
for (int i=0; i<disk.num_tracks; ++i) {
|
for (int i=0; i<disk.num_tracks; ++i) {
|
||||||
for (int j=0; j<disk.tracks[i].num_sectors; ++j) {
|
for (int j=0; j<disk.tracks[i].num_sectors; ++j) {
|
||||||
free(disk.tracks[i].sectors[i].data);
|
free(disk.tracks[i].sectors[j].data);
|
||||||
}
|
}
|
||||||
free(disk.tracks[i].sectors);
|
free(disk.tracks[i].sectors);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
#include "zx_mem.h"
|
#include "zx_mem.h"
|
||||||
#include "stdlib.h"
|
#include <stdlib.h>
|
||||||
#include "z80.h"
|
#include "z80.h"
|
||||||
#include "zx_screen.h"
|
#include "zx_screen.h"
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user