on the 11/34, supervisor-mode does not exist - behaves like user-mode(?)
This commit is contained in:
parent
f5d7fafcd4
commit
3e716dbca1
1 changed files with 6 additions and 0 deletions
6
bus.cpp
6
bus.cpp
|
@ -283,6 +283,9 @@ uint16_t bus::read(const uint16_t a, const bool word_mode, const bool use_prev,
|
|||
|
||||
int run_mode = (c->getPSW() >> (use_prev ? 12 : 14)) & 3;
|
||||
|
||||
if (run_mode == 1 && c->get_34())
|
||||
run_mode = 3;
|
||||
|
||||
uint32_t m_offset = calculate_physical_address(run_mode, a, !peek_only, false, peek_only);
|
||||
|
||||
if (word_mode)
|
||||
|
@ -693,6 +696,9 @@ uint16_t bus::write(const uint16_t a, const bool word_mode, uint16_t value, cons
|
|||
|
||||
int run_mode = (c->getPSW() >> (use_prev ? 12 : 14)) & 3;
|
||||
|
||||
if (run_mode == 1 && c->get_34())
|
||||
run_mode = 3;
|
||||
|
||||
uint32_t m_offset = calculate_physical_address(run_mode, a, true, true, false);
|
||||
|
||||
DOLOG(debug, true, "WRITE to %06o/%07o: %o", a, m_offset, value);
|
||||
|
|
Loading…
Add table
Reference in a new issue