16b fixes
Some checks are pending
Build / cmake-builds (push) Waiting to run
Build / makefile (macos-latest, besm6 imlac tt2500 microvax3900 microvax1 rtvax1000 vaxstation3100m76 vaxstation4000m60) (push) Waiting to run
Build / makefile (macos-latest, id16 id32 sds lgp h316 cdc1700 swtp6800mp-a swtp6800mp-a2 tx-0 ssem b5500 sage pdq3 alpha) (push) Waiting to run
Build / makefile (macos-latest, microvax2 vax730 vax750 vax780 vax8200 vax8600 microvax2000 infoserver100 infoserver150vxt microvax3100 microvax3100e vaxstation3100m30 vaxstation3100m38) (push) Waiting to run
Build / makefile (macos-latest, microvax3100m80 vaxstation4000vlc infoserver1000 nova eclipse hp2100 hp3000 i1401 i1620 s3 altair altairz80 gri i7094) (push) Waiting to run
Build / makefile (macos-latest, pdp1 pdp4 pdp6 pdp7 pdp8 pdp9 pdp10 pdp10-ka pdp10-ki pdp10-kl pdp10-ks pdp11 pdp15 vax) (push) Waiting to run
Build / makefile (macos-latest, scelbi 3b2 i701 i704 i7010 i7070 i7080 i7090 sigma uc15 i650 sel32 intel-mds ibm1130) (push) Waiting to run
Build / makefile (ubuntu-latest, besm6 imlac tt2500 microvax3900 microvax1 rtvax1000 vaxstation3100m76 vaxstation4000m60) (push) Waiting to run
Build / makefile (ubuntu-latest, id16 id32 sds lgp h316 cdc1700 swtp6800mp-a swtp6800mp-a2 tx-0 ssem b5500 sage pdq3 alpha) (push) Waiting to run
Build / makefile (ubuntu-latest, microvax2 vax730 vax750 vax780 vax8200 vax8600 microvax2000 infoserver100 infoserver150vxt microvax3100 microvax3100e vaxstation3100m30 vaxstation3100m38) (push) Waiting to run
Build / makefile (ubuntu-latest, microvax3100m80 vaxstation4000vlc infoserver1000 nova eclipse hp2100 hp3000 i1401 i1620 s3 altair altairz80 gri i7094) (push) Waiting to run
Build / makefile (ubuntu-latest, pdp1 pdp4 pdp6 pdp7 pdp8 pdp9 pdp10 pdp10-ka pdp10-ki pdp10-kl pdp10-ks pdp11 pdp15 vax) (push) Waiting to run
Build / makefile (ubuntu-latest, scelbi 3b2 i701 i704 i7010 i7070 i7080 i7090 sigma uc15 i650 sel32 intel-mds ibm1130) (push) Waiting to run

This commit is contained in:
Folkert van Heusden 2025-04-06 23:00:16 +02:00
parent 15b397aed7
commit 9eee7acc94
Signed by untrusted user who does not match committer: folkert
GPG key ID: 6B6455EDFEED3BD1
2 changed files with 11 additions and 3 deletions

View file

@ -290,7 +290,7 @@ void init_mem_writes()
mem_writes = (struct __mem_writes *)malloc(sizeof(struct __mem_writes) * 256);
}
void put_mem_write(uint8_t data, uint32_t pa)
void put_mem_write(uint8_t data, int32_t pa)
{
int i = 0;
int found = 0;

View file

@ -23,8 +23,9 @@ extern int32 sim_interval;
struct __mem_writes {
int32_t addr;
uint16_t data;
uint8_t data;
};
extern struct __mem_writes *mem_writes;
extern int n_mem_writes;
extern void reset_mem_writes();
@ -88,8 +89,15 @@ json_t *generate_test(uint16_t instruction, int *const id, struct mem_t *mem, si
json_t *put_mem_i_0 = json_object();
PWriteW(mem[i].value, mem[i].addr);
if (mem[i].addr & 1)
printf("FAIL\n");
sprintf(buffer, "%06o", mem[i].addr);
json_object_set(put_mem_i_0, buffer, json_integer(mem[i].value));
json_object_set(put_mem_i_0, buffer, json_integer(mem[i].value & 255));
json_array_append_new(memory_i, put_mem_i_0);
sprintf(buffer, "%06o", mem[i].addr + 1);
json_object_set(put_mem_i_0, buffer, json_integer(mem[i].value >> 8));
json_array_append_new(memory_i, put_mem_i_0);
}