Re: Hardware emulation of 6509 using 6502?

From: Mia Magnusson <mia_at_plea.se>
Date: Thu, 26 Jul 2018 03:18:05 +0200
Message-ID: <20180726031805.000039e5@plea.se>
Den Wed, 25 Jul 2018 10:33:44 +0100 skrev smf <smf@null.net>:
> 
> On 24/07/2018 23:43, Mia Magnusson wrote:
> > Sound would be hard anyways. In theory you could remap the PET sound
> > I/O pin to the volume control register of the SID if it happens to
> > use the right bits.
> 
> I was mostly thinking about allowing the CB2 pet sound to be remapped 
> from the VIA to the CIA and let the user come up with a way of
> getting that to produce sound.
> 
> You could then either run a speaker from it how you did on a pet, or 
> direct it to the sid audio input.

Well, in that case you might just emulate that bit of that port
directly instead, which probably won't be that hard as the CPLD anyway
emulate the behavior of $0/$1 on the 6509.

> > But who did use joysticks on a PET? I've never heard of that.
> 
> Adding joysticks and sound was a relatively common upgrade, there
> were a few different schematics.
> 
> The standard one has 2 joystick ports.
> 
> https://www.c64-wiki.com/wiki/PET_2001#Joysticks
> 
> http://www.classiccmp.org/cini/pdf/kilobaud/Pet%20User%20Port%20Cookbook%20(0379).pdf
> 
> Vice supports them.

Oh. But that must be the kind of software no-one wants to run? ;)

> > Well, as there is only one setting of the 6545/6845 that right for a
> > given monitor it might be best to not expose those registers to old
> > PET programs.
> 
> Sure, blocking that would seem a good idea.

Yeah, especially as it would be an extra effort to let access to the
6845/6545 pass through instead of just ignoring it.

> > Basic won't use pokes to 0/1 unless it also contains machine code
> > programs.
> 
> Yes, but some machine code might still work. You should either block
> it by denying the poke to 0/1, or try to come up with an alternative
> that remaps it.
> 
> Letting the program just die would seem annoying to a user.

As all address lines go in to the CPLD the easiest would be to map some
enable/disable thing onto another address.

> > A VIC-20 emulator for C64 would imho be rather useless as you can't
> > emulate anything near how the display hardware works. If it were
> > possible to set VIC-II to a variable amount of chars per line it
> > could work better though.
> 
> Running pet programs on a cbm2 is rather useless too, a pc running
> vice will do the job better. Isn't it just about the challenge of
> doing it?

Well, a cbm2 has hardware that's similar enough that I assume most
productivity software for PET would work.

Emulating a VIC 20 would require something like an interrupt routine
copying a 22*23 screen onto the 40*25 screen and translate the VIC
registers, or just let basic programs without most pokes/peeks run by
just inserting a line feed at position 22.

> I don't recall ever seeing the vic20 emulator run, but I remember it 
> mentioned at school as being printed in a magazine & I assume it just 
> uses 22 columns of the screen
> 
> http://sleepingelephant.com/ipw-web/bulletin/bb/viewtopic.php?t=468

Seems like a bad idea :)


-- 
(\_/) Copy the bunny to your mails to help
(O.o) him achieve world domination.
(> <) Come join the dark side.
/_|_\ We have cookies.
Received on 2018-07-26 04:02:01

Archive generated by hypermail 2.2.0.