rl02/rk05 is now instantiated without any disks
This commit is contained in:
parent
183330d6c3
commit
12a2e88680
6 changed files with 11 additions and 18 deletions
|
@ -73,9 +73,6 @@ std::atomic_bool *running { nullptr };
|
|||
|
||||
bool trace_output { false };
|
||||
|
||||
std::vector<disk_backend *> rk05_files;
|
||||
std::vector<disk_backend *> rl02_files;
|
||||
|
||||
void console_thread_wrapper_panel(void *const c)
|
||||
{
|
||||
console *const cnsl = reinterpret_cast<console *>(c);
|
||||
|
@ -312,9 +309,9 @@ void setup() {
|
|||
running = cnsl->get_running_flag();
|
||||
|
||||
Serial.println(F("Connect RK05 and RL02 to BUS"));
|
||||
b->add_rk05(new rk05(rk05_files, b, cnsl->get_disk_read_activity_flag(), cnsl->get_disk_write_activity_flag()));
|
||||
b->add_rk05(new rk05(b, cnsl->get_disk_read_activity_flag(), cnsl->get_disk_write_activity_flag()));
|
||||
|
||||
b->add_rl02(new rl02(rl02_files, b, cnsl->get_disk_read_activity_flag(), cnsl->get_disk_write_activity_flag()));
|
||||
b->add_rl02(new rl02(b, cnsl->get_disk_read_activity_flag(), cnsl->get_disk_write_activity_flag()));
|
||||
|
||||
Serial.println(F("Init TTY"));
|
||||
tty_ = new tty(cnsl, b);
|
||||
|
|
4
main.cpp
4
main.cpp
|
@ -534,9 +534,9 @@ int main(int argc, char *argv[])
|
|||
if (enable_bootloader)
|
||||
set_boot_loader(b, bootloader);
|
||||
|
||||
b->add_rk05(new rk05(rk05_files, b, cnsl->get_disk_read_activity_flag(), cnsl->get_disk_write_activity_flag()));
|
||||
b->add_rk05(new rk05(b, cnsl->get_disk_read_activity_flag(), cnsl->get_disk_write_activity_flag()));
|
||||
|
||||
b->add_rl02(new rl02(rl02_files, b, cnsl->get_disk_read_activity_flag(), cnsl->get_disk_write_activity_flag()));
|
||||
b->add_rl02(new rl02(b, cnsl->get_disk_read_activity_flag(), cnsl->get_disk_write_activity_flag()));
|
||||
}
|
||||
else {
|
||||
FILE *fh = fopen(deserialize.c_str(), "r");
|
||||
|
|
4
rk05.cpp
4
rk05.cpp
|
@ -23,13 +23,11 @@ static const char * const regnames[] = {
|
|||
"RK05_DATABUF "
|
||||
};
|
||||
|
||||
rk05::rk05(const std::vector<disk_backend *> & files, bus *const b, std::atomic_bool *const disk_read_acitivity, std::atomic_bool *const disk_write_acitivity) :
|
||||
rk05::rk05(bus *const b, std::atomic_bool *const disk_read_acitivity, std::atomic_bool *const disk_write_acitivity) :
|
||||
b(b),
|
||||
disk_read_acitivity(disk_read_acitivity),
|
||||
disk_write_acitivity(disk_write_acitivity)
|
||||
{
|
||||
fhs = files;
|
||||
|
||||
reset();
|
||||
}
|
||||
|
||||
|
|
2
rk05.h
2
rk05.h
|
@ -39,7 +39,7 @@ private:
|
|||
void update_bus_address(const uint16_t v);
|
||||
|
||||
public:
|
||||
rk05(const std::vector<disk_backend *> & files, bus *const b, std::atomic_bool *const disk_read_acitivity, std::atomic_bool *const disk_write_acitivity);
|
||||
rk05(bus *const b, std::atomic_bool *const disk_read_acitivity, std::atomic_bool *const disk_write_acitivity);
|
||||
virtual ~rk05();
|
||||
|
||||
void reset() override;
|
||||
|
|
10
rl02.cpp
10
rl02.cpp
|
@ -31,13 +31,11 @@ static const char * const commands[] = {
|
|||
"read data w/o header check"
|
||||
};
|
||||
|
||||
rl02::rl02(const std::vector<disk_backend *> & files, bus *const b, std::atomic_bool *const disk_read_activity, std::atomic_bool *const disk_write_activity) :
|
||||
rl02::rl02(bus *const b, std::atomic_bool *const disk_read_activity, std::atomic_bool *const disk_write_activity) :
|
||||
b(b),
|
||||
disk_read_activity (disk_read_activity ),
|
||||
disk_write_activity(disk_write_activity)
|
||||
{
|
||||
fhs = files;
|
||||
|
||||
reset();
|
||||
}
|
||||
|
||||
|
@ -86,11 +84,11 @@ rl02 *rl02::deserialize(const json_t *const j, bus *const b)
|
|||
{
|
||||
std::vector<disk_backend *> backends;
|
||||
|
||||
rl02 *r = new rl02(b, nullptr, nullptr);
|
||||
|
||||
json_t *j_backends = json_object_get(j, "backends");
|
||||
for(size_t i=0; i<json_array_size(j_backends); i++)
|
||||
backends.push_back(disk_backend::deserialize(json_array_get(j_backends, i)));
|
||||
|
||||
rl02 *r = new rl02(backends, b, nullptr, nullptr);
|
||||
r->access_disk_backends()->push_back(disk_backend::deserialize(json_array_get(j_backends, i)));
|
||||
|
||||
for(int regnr=0; regnr<4; regnr++)
|
||||
r->registers[regnr] = json_integer_value(json_object_get(j, format("register-%d", regnr).c_str()));
|
||||
|
|
2
rl02.h
2
rl02.h
|
@ -47,7 +47,7 @@ private:
|
|||
uint32_t calc_offset() const;
|
||||
|
||||
public:
|
||||
rl02(const std::vector<disk_backend *> & files, bus *const b, std::atomic_bool *const disk_read_activity, std::atomic_bool *const disk_write_activity);
|
||||
rl02(bus *const b, std::atomic_bool *const disk_read_activity, std::atomic_bool *const disk_write_activity);
|
||||
virtual ~rl02();
|
||||
|
||||
void reset() override;
|
||||
|
|
Loading…
Add table
Reference in a new issue