Quantcast
Channel: stardot.org.uk
Viewing all articles
Browse latest Browse all 2379

8-bit acorn hardware • Re: Pi1MHz Software

$
0
0
If there is a genuine issue (which I suspect there is), then I guess either folks aren't using this newest firmware with M5000, or if they are using the newest firmware, they aren't using the M5000 functionality along with it. But it would be nice to get this confirmed.
OK, issue confirmed!

The problem is the 1MHz bus page registers are now at the wrong address (and have been since commit 53733e3e). So this affects all releases after v1.13.

For historic reasons the paged RAM emulator init code creates them with an offset of one:

Code:

static emulator_list emulator[] = {   {"Rampage",rampage_emulator_init, 0xFD, 1}   ...void rampage_emulator_init( uint8_t instance , uint8_t address){   static uint8_t init = 0 ;   // Page access register write fcfd fcfe fcff   Pi1MHz_Register_Memory(WRITE_FRED, address + 1, ram_emulator_page_addr_high ); // high byte   Pi1MHz_Register_Memory(WRITE_FRED, address + 2, ram_emulator_page_addr_mid ); // Mid byte   Pi1MHz_Register_Memory(WRITE_FRED, address + 3, ram_emulator_page_addr_low ); // low byte...
These registers should be at 0xFCFD-0xFCFF, but with the offset and a default address of 0xFD they end up at 0xFCFE, &FCFF and &FC00:
[/code]

The correct fix is a code change to eliminate the offset, but as a temporary workaround, try putting this in cmdline.txt:

Code:

Rampage_addr=0xfc
Dave

Statistics: Posted by hoglet — Tue Nov 26, 2024 11:03 am



Viewing all articles
Browse latest Browse all 2379

Trending Articles