C64 Core

https://github.com/MiSTer-devel/Main_MiSTer/wiki

Moderators: Mug UK, Zorro 2, Greenious, spiny, Sorgelig, Moderator Team

vanfanel
Obsessive compulsive Atari behavior
Obsessive compulsive Atari behavior
Posts: 121
Joined: Tue Oct 09, 2018 10:19 pm
Location: Salamanca, España

Re: C64 Core

Postby vanfanel » Tue Feb 05, 2019 9:29 pm

yellperil wrote:
vanfanel wrote:Does Wizball work for you guys in the latest version of the core? It seems to hang before the tittle screen. Game was working with older versions of the core. Could it be a regression? Or maybe the dual SID somehow confusing the game's code?


The last core that wizball worked on was : C64_20190128.rbf


So we have a regression after all... :cry:

JimDrew
Atari Super Hero
Atari Super Hero
Posts: 854
Joined: Mon Nov 04, 2013 5:23 pm

Re: C64 Core

Postby JimDrew » Wed Feb 06, 2019 12:47 am

slingshot wrote:I think this 300 baud (or 2400) is only by software controlled communications (as I read, the ROM routine doesn't use the shift register). The CIA itself is capable of more (just think about the VIA SR is used for SPI to SD-Cards in BBC Micro).


ROM routines only support up to about 600 baud, and can not be used for a terminal program. Take a look at the source code for any of the terminal programs out there (like CCGMS for example). The CIA is accessed directly because the ROM routines are not capable of handling even 1200 baud. The CIA's shift register is used.

I did one of the first conversions of CCGMS when the author released the source code, and I have a ton of experience with it and the WiModem (which I created). I also created UP9600 compatible code and even some 38400 and 57600 code for the hard drive emulation that the WiModem has.
I am the flux ninja

JimDrew
Atari Super Hero
Atari Super Hero
Posts: 854
Joined: Mon Nov 04, 2013 5:23 pm

Re: C64 Core

Postby JimDrew » Wed Feb 06, 2019 12:59 am

Sorgelig wrote:It's not hard to use UART connection. MiSTer framework provides standard UART signals to connect to supported core. So, need some one who knows how to connect C64 side to UART and knows the required software.


You don't need a UART. You just need to add 3 lines from the CIA to FPGA pins:

Tx = USER PORT 'M' (pin 23), connected to CIA U2 pin 4 (PA2).
Rx = USER PORT 'B' (pin 14), connected to CIA U2 pin 24 (/FLAG2).
Rx = USER PORT 'C' (pin 15), connected to CIA U2 pin 10 (PB0).

Tx -> Tx port pin USB-C connector
The two 'RX' connections are tied together -> Rx port pin (USB-C connector)

If this was supported in the core, then you could use any modern modem through the USB-C connector.

One thing that the C64 emulation does need is the removal of the copyrighted ROM code (computer and disk drive) and make it load an external ROM files like the arcade cores do.
I am the flux ninja

ericgus
Captain Atari
Captain Atari
Posts: 476
Joined: Fri Apr 08, 2016 4:53 am
Location: Boston MA - USA

Re: C64 Core

Postby ericgus » Wed Feb 06, 2019 3:50 am

JimDrew wrote:
Sorgelig wrote:It's not hard to use UART connection. MiSTer framework provides standard UART signals to connect to supported core. So, need some one who knows how to connect C64 side to UART and knows the required software.


You don't need a UART. You just need to add 3 lines from the CIA to FPGA pins:

Tx = USER PORT 'M' (pin 23), connected to CIA U2 pin 4 (PA2).
Rx = USER PORT 'B' (pin 14), connected to CIA U2 pin 24 (/FLAG2).
Rx = USER PORT 'C' (pin 15), connected to CIA U2 pin 10 (PB0).

Tx -> Tx port pin USB-C connector
The two 'RX' connections are tied together -> Rx port pin (USB-C connector)

If this was supported in the core, then you could use any modern modem through the USB-C connector.

One thing that the C64 emulation does need is the removal of the copyrighted ROM code (computer and disk drive) and make it load an external ROM files like the arcade cores do.


Jim, I think you are missing that with the Mister's MIDILINK/TCP {software} UART functionally you don't need to physically connect it to an external serial connection. Midilink is part of Mister. The MIDILINK/TCP works like a software wifi modem internally using the Mister's network stack.. so no need to eternally wire the core to external hardware like voltage shift or anything like that, this is totally 100% internal to the mister and no need for a "real" actual electrically connected eternal serial device.. just tie the MIDILINK UART functionality to the FPGA core .. the MIDILINK TCP has wifi "hayes" modem commands on the UART connection.. try it with the AO486 or the Amiga core and any serial port term program like ProComPlus for the pc or TERM 4.8 for the Amiga, you just type "ATDT" and the address like a wifi modem.. its actually less complicated than I think you realize.

for reference I think you should look at this regarding MIDILINK and scroll down to the TCP section https://github.com/bbond007/MiSTer_MidiLink

JimDrew
Atari Super Hero
Atari Super Hero
Posts: 854
Joined: Mon Nov 04, 2013 5:23 pm

Re: C64 Core

Postby JimDrew » Wed Feb 06, 2019 4:47 pm

I am well aware of the MIDILINK/TCP option, and it is *extremely* limited with its Hayes compatibility. Having the 2 pins externally available would open the door to using real hardware for running a BBS, using various programs and terminal software that require certain commands, and having hard drive emulation. Having 4 pins available (Rx/Tx/RTS/CTS) would let you emulate the UP9600 baud hack and give you high speed serial support. That would make it compatible with any real hardware.
I am the flux ninja

BBond007
Captain Atari
Captain Atari
Posts: 394
Joined: Wed Feb 28, 2018 3:23 am

Re: C64 Core

Postby BBond007 » Wed Feb 06, 2019 8:46 pm

JimDrew wrote:I am well aware of the MIDILINK/TCP option, and it is *extremely* limited with its Hayes compatibility. Having the 2 pins externally available would open the door to using real hardware for running a BBS, using various programs and terminal software that require certain commands, and having hard drive emulation. Having 4 pins available (Rx/Tx/RTS/CTS) would let you emulate the UP9600 baud hack and give you high speed serial support. That would make it compatible with any real hardware.


In other news... Jim sells WiFi modems...

JimDrew
Atari Super Hero
Atari Super Hero
Posts: 854
Joined: Mon Nov 04, 2013 5:23 pm

Re: C64 Core

Postby JimDrew » Wed Feb 06, 2019 9:20 pm

True, and mine has hard drive emulation and other features. But, there are MANY different WiFi modems for the C64/128, as well as other devices that plug into the USER port that need real serial access. I think the MiSTer setup would make an ideal platform from running a C64 BBS.
I am the flux ninja

hernan43
Retro freak
Retro freak
Posts: 13
Joined: Thu Dec 27, 2018 7:10 pm

Re: C64 Core

Postby hernan43 » Wed Feb 06, 2019 9:38 pm

Those WiFi adapters are super fun. I just assembled one recently and have been surfing BBSes.

User avatar
Paradroyd
Captain Atari
Captain Atari
Posts: 293
Joined: Tue Sep 10, 2013 10:50 pm
Contact:

Re: C64 Core

Postby Paradroyd » Wed Feb 06, 2019 10:38 pm

Honestly, both options (physical serial lines and tcp virtual serial/UART) would be useful, for different reasons.

The ultimate thing would to eventually have both options selectable in the F12 menu. At this point i'd be glad to have any of the above, but for my own selfish reasons, If I had to choose I'd prefer to be able to pipe it over tcp, just because it would be easy to turn it on without any additional physical hookups or hardware at a moment's notice.
- Paradroyd
@paradroyd on Twitter, @paradroyd@mastodon.sdf.org on Mastodon

BBond007
Captain Atari
Captain Atari
Posts: 394
Joined: Wed Feb 28, 2018 3:23 am

Re: C64 Core

Postby BBond007 » Thu Feb 07, 2019 6:07 am

@Paradroyd

What would be your suggestion for C64 terminal programs?

User avatar
Paradroyd
Captain Atari
Captain Atari
Posts: 293
Joined: Tue Sep 10, 2013 10:50 pm
Contact:

Re: C64 Core

Postby Paradroyd » Thu Feb 07, 2019 7:00 am

BBond007 wrote:@Paradroyd

What would be your suggestion for C64 terminal programs?


I Personally like Striketerm 2014, but I tend to stick with what I know/what works on things like this.

The hot new terminal that's got a really great reputation right now is CCGMS Ultimate. I keep meaning to give that one a try.
Last edited by Paradroyd on Fri Feb 08, 2019 12:55 am, edited 1 time in total.
- Paradroyd
@paradroyd on Twitter, @paradroyd@mastodon.sdf.org on Mastodon

yellperil
Atari freak
Atari freak
Posts: 51
Joined: Sun Jun 04, 2017 10:53 am

Re: C64 Core

Postby yellperil » Thu Feb 07, 2019 1:50 pm

vanfanel wrote:
yellperil wrote:
vanfanel wrote:Does Wizball work for you guys in the latest version of the core? It seems to hang before the tittle screen. Game was working with older versions of the core. Could it be a regression? Or maybe the dual SID somehow confusing the game's code?


The last core that wizball worked on was : C64_20190128.rbf


So we have a regression after all... :cry:


Sorry . . . I tried it again tonight and I was wrong I can't get it to work on C64_20190128.rbf at all.

I went and deleted ALL the c64 cores off of my Mister and retried it all over again with just single cores.

It does actually work on C64_20190111.rbf . . . that's before the CIA changes.

JimDrew
Atari Super Hero
Atari Super Hero
Posts: 854
Joined: Mon Nov 04, 2013 5:23 pm

Re: C64 Core

Postby JimDrew » Fri Feb 08, 2019 12:50 am

Paradroyd wrote:The ultimate thing would to eventually have both options selectable in the F12 menu. At this point i'd be glad to have any of the above, but for my own selfish reasons, If I had to choose I'd prefer to be able to pipe it over tcp, just because it would be easy to turn it on without any additional physical hookups or hardware at a moment's notice.


In either case it is going to require that the CIA pins be emulated and connected either to external FPGA pins or re-directed to the MIDILINK thing. So, since most of work has to be done on the CIA side anyways, having both options at that point should be fairly simple.
I am the flux ninja

BBond007
Captain Atari
Captain Atari
Posts: 394
Joined: Wed Feb 28, 2018 3:23 am

Re: C64 Core

Postby BBond007 » Fri Feb 08, 2019 1:36 am

JimDrew wrote:In either case it is going to require that the CIA pins be emulated and connected either to external FPGA pins or re-directed to the MIDILINK thing. So, since most of work has to be done on the CIA side anyways, having both options at that point should be fairly simple.


If an external option is added, then it should probably be done at a level where it is available to all cores supporting serial UART (not just C64)

The possibility also exists to route the serial data from /dev/ttyS1 to a USB serial adapter using the HPS - just like a USB MIDI adapter currently works. That way people don't need a MAX232 (or whatever) for voltage conversion.

I am definitely way over my head with this HDL stuff, but fortunately ElectronAsh has helped get the ball rolling.

TX from the C64 core to the HPS is now working. It works at 300, 1200 and 2400. Unfortunately, no data is being echoed back to the C64 side.

https://youtu.be/Yw7PN0AZ7D8

duhproject
Atari freak
Atari freak
Posts: 54
Joined: Fri Jan 15, 2016 6:57 pm

Re: C64 Core

Postby duhproject » Fri Feb 08, 2019 2:47 am

BBond007 wrote:
TX from the C64 core to the HPS is now working. It works at 300, 1200 and 2400. Unfortunately, no data is being echoed back to the C64 side.

https://youtu.be/Yw7PN0AZ7D8


Very promising. I never use higher than 2400 baud on my real c64 anyhow. Really cool!

User avatar
Paradroyd
Captain Atari
Captain Atari
Posts: 293
Joined: Tue Sep 10, 2013 10:50 pm
Contact:

Re: C64 Core

Postby Paradroyd » Fri Feb 08, 2019 3:46 am

BBond007 wrote:I am definitely way over my head with this HDL stuff, but fortunately ElectronAsh has helped get the ball rolling.

TX from the C64 core to the HPS is now working. It works at 300, 1200 and 2400. Unfortunately, no data is being echoed back to the C64 side.

https://youtu.be/Yw7PN0AZ7D8


That is a promising start!

And I agree..for a C64, I seldom go above 2400 baud anyway. I don't do a lot of straight-up file transferring over serial. There are lots better ways to move files around these days, IMO.
- Paradroyd
@paradroyd on Twitter, @paradroyd@mastodon.sdf.org on Mastodon

JimDrew
Atari Super Hero
Atari Super Hero
Posts: 854
Joined: Mon Nov 04, 2013 5:23 pm

Re: C64 Core

Postby JimDrew » Fri Feb 08, 2019 7:11 am

BBond007 wrote:
JimDrew wrote:In either case it is going to require that the CIA pins be emulated and connected either to external FPGA pins or re-directed to the MIDILINK thing. So, since most of work has to be done on the CIA side anyways, having both options at that point should be fairly simple.


If an external option is added, then it should probably be done at a level where it is available to all cores supporting serial UART (not just C64)


I agree! It was be GREAT to have RX/TX/RTS/CTS available on 4 pins (like the USB-C connector) for serial support on all cores. The Amiga, Atari ST, etc. could then use REAL MIDI interfaces that were sold for those computers. The Amiga would also have serial available for a slew of devices as well, like tablets, lightpens, modems, etc. The C64 would have serial for real USER port devices that used the serial connection (modems, local networking, etc.) People want to be able to plug in real hardware into their emulation box (even if it requires a simple level shifter).
I am the flux ninja

BBond007
Captain Atari
Captain Atari
Posts: 394
Joined: Wed Feb 28, 2018 3:23 am

Re: C64 Core

Postby BBond007 » Fri Feb 08, 2019 7:18 am

The C64 core will soon be on-line thanks to ElectronAsh!

A few screenshots of it working:

:cheers:
You do not have the required permissions to view the files attached to this post.

vanfanel
Obsessive compulsive Atari behavior
Obsessive compulsive Atari behavior
Posts: 121
Joined: Tue Oct 09, 2018 10:19 pm
Location: Salamanca, España

Re: C64 Core

Postby vanfanel » Fri Feb 08, 2019 10:01 am

Wizbal is working again on the latest build! Yay! :)

However, "Edge of Disgrace" is still glitching at min 4 :(

PhantombrainM
Captain Atari
Captain Atari
Posts: 184
Joined: Fri Mar 16, 2018 9:10 am

Re: C64 Core

Postby PhantombrainM » Fri Feb 08, 2019 1:14 pm

Hello! I am frequently in the Forum64 and there we created a chart with C64 tests for the Ultimate 64, where we enter the results per firmware. Wouldn't it make sense to do something like this for the MISTer FPGA core as well? As an example we noticed there that there were problems with the illegal opcodes on the Ultimate 64. That was the reason why many demos or the new Donkey Kong 2016 didn't work. When Gideon added the illegal opcodes, it fixed a lot of bugs.

Here is an example of the U64 test table: https://www.c64-wiki.de/wiki/Ultimate_64/Testbericht

Is there already such a thing for the MISTer Core?
Otherwise I would go through all the tests. The tests take hours and it's a bit of work.
Would something like that be useful?
Two beer or not two beer? - Shakesbeer.

NML32
Atari Super Hero
Atari Super Hero
Posts: 648
Joined: Tue Mar 11, 2014 1:54 am
Location: USA/Florida

Re: C64 Core

Postby NML32 » Fri Feb 08, 2019 1:42 pm

PhantombrainM wrote:Hello! I am frequently in the Forum64 and there we created a chart with C64 tests for the Ultimate 64, where we enter the results per firmware. Wouldn't it make sense to do something like this for the MISTer FPGA core as well? As an example we noticed there that there were problems with the illegal opcodes on the Ultimate 64. That was the reason why many demos or the new Donkey Kong 2016 didn't work. When Gideon added the illegal opcodes, it fixed a lot of bugs.

Here is an example of the U64 test table: https://www.c64-wiki.de/wiki/Ultimate_64/Testbericht

Is there already such a thing for the MISTer Core?
Otherwise I would go through all the tests. The tests take hours and it's a bit of work.
Would something like that be useful?

I created this a while ago.

https://docs.google.com/spreadsheets/d/ ... kEYJ-uyr58

slingshot
Atari God
Atari God
Posts: 1352
Joined: Mon Aug 06, 2018 3:05 pm

Re: C64 Core

Postby slingshot » Fri Feb 08, 2019 2:44 pm

PhantombrainM wrote:
Here is an example of the U64 test table: https://www.c64-wiki.de/wiki/Ultimate_64/Testbericht

Is there already such a thing for the MISTer Core?
Otherwise I would go through all the tests. The tests take hours and it's a bit of work.
Would something like that be useful?


Of course it would be useful with the tests in VICE.

PhantombrainM
Captain Atari
Captain Atari
Posts: 184
Joined: Fri Mar 16, 2018 9:10 am

Re: C64 Core

Postby PhantombrainM » Fri Feb 08, 2019 2:55 pm

slingshot wrote:
PhantombrainM wrote:
Here is an example of the U64 test table: https://www.c64-wiki.de/wiki/Ultimate_64/Testbericht

Is there already such a thing for the MISTer Core?
Otherwise I would go through all the tests. The tests take hours and it's a bit of work.
Would something like that be useful?


Of course it would be useful with the tests in VICE.


Okay, i began to start. It will take some time to complete all the tests:

https://docs.google.com/spreadsheets/d/ ... sp=sharing
Two beer or not two beer? - Shakesbeer.

slingshot
Atari God
Atari God
Posts: 1352
Joined: Mon Aug 06, 2018 3:05 pm

Re: C64 Core

Postby slingshot » Fri Feb 08, 2019 3:04 pm



Thanks! It's a good start.

User avatar
Paradroyd
Captain Atari
Captain Atari
Posts: 293
Joined: Tue Sep 10, 2013 10:50 pm
Contact:

Re: C64 Core

Postby Paradroyd » Fri Feb 08, 2019 5:00 pm

BBond007 wrote:The C64 core will soon be on-line thanks to ElectronAsh!

A few screenshots of it working:

:cheers:


That's great news!
- Paradroyd
@paradroyd on Twitter, @paradroyd@mastodon.sdf.org on Mastodon


Return to “MiSTer”

Who is online

Users browsing this forum: No registered users and 7 guests