Re: Test suite for 6509 processor

From: Mia Magnusson <mia_at_plea.se>
Date: Mon, 26 Feb 2018 00:19:14 +0100
Message-ID: <20180226001914.00007ef7@plea.se>
Den Sun, 25 Feb 2018 23:41:57 +0100 skrev Michał Pleban
<lists@michau.name>:
> Mia Magnusson wrote:
> 
> > Or use indirect access to 0/1?
> 
> A side note - the fact that indirect access to these addresses will
> still affect CPU registers is the reason why disk reads do not work
> across 64 kB boundaries in the 6509 MS-DOS IPC library.
> 
> Interestingly, the IPC code contains specific workarounds in case the
> read crosses such boundary (rewinding the memory pointer to 0000 and
> incrementing the $1 register value) but they are worthless anyway
> because as soon as anything is written to memory address $x0000,
> everything goes out of the window. It is apparent that the programmers
> who wrote this code did not understand fully how the 6509 works.

If the IPC code is in bank 15, then the incorrect write would end up at
adress 0 and 1 in bank 15, which I assume is not a place where the 8088
wants to read/write from disk. So the 6509 IPC disk I/O code should
work even when crossing page boundaries.

P.S. does VICE emulate the 6509 behaviour correctly? Although there are
no 8088 emulation there, afaik it has a monitor making it possible to
check what happens anyways.

-- 
(\_/) Copy the bunny to your mails to help
(O.o) him achieve world domination.
(> <) Come join the dark side.
/_|_\ We have cookies.

       Message was sent through the cbm-hackers mailing list
Received on 2018-02-26 01:01:11

Archive generated by hypermail 2.2.0.