Can DE10-Nano Kit hardware emulate Commander X16?

Chat about anything CX16 related that doesn't fit elsewhere
Fnord42
Posts: 74
Joined: Fri Aug 14, 2020 8:56 am

Can DE10-Nano Kit hardware emulate Commander X16?

Post by Fnord42 »



2 minutes ago, TomXP411 said:




Personally, I see FPGA hardware as being just as 'real" as discrete chips, with the added benefit that they can be improved much more quickly.



 



That's a valid point. Oddly enough, I don't mind at all that Vera is FPGA-based - probably because it is a completely new thing anyway.

I think having every major component of the system as a discrete part adds to the feeling of being able to understand how everything works together. (Again, not really rational - I'm aware that a well documented FPGA design doesn't have to be worse in that regard.)

User avatar
StephenHorn
Posts: 565
Joined: Tue Apr 28, 2020 12:00 am
Contact:

Can DE10-Nano Kit hardware emulate Commander X16?

Post by StephenHorn »


Now I wonder how Google's doing with their Skywater PDK stuff.

I mean, why slave yourself to an FPGA if you can apply an open-source design to an actual nib of silicon?

Developer for Box16, the other X16 emulator. (Box16 on GitHub)
I also accept pull requests for x16emu, the official X16 emulator. (x16-emulator on GitHub)
Yuki
Posts: 126
Joined: Mon Apr 27, 2020 1:50 am

Can DE10-Nano Kit hardware emulate Commander X16?

Post by Yuki »


Yeah, the point of the MiSTer is that you would have to reimplement the entire machine in a FPGA, but it would work as on a RetroArch machine, as I understand. It's definitely possible, but whether it would be legal, I'd advise talking about it with the X16 dev team first. Of course, you won't have to reimplement the ROM, which is where the Cloanto IP would be, so at least that.



Now, adding a generic 6502 core would be pretty cool ?

Edit: I did a bit of research, the emulator is under a BSD 2-Clause (unless it's an error), so you can steal its code however you want as long as the licence is retained, so I imagine a software reimplementation would be okay, the thing is that the X16 design and IP would probably be copyrighted so you couldn't do an exact clone of it, at least in hardware. Thing is, we're talking about an FPGA, but I would think it would be more considered of the software side if it's just a core to a larger machine. In any case, still best to consult someone like @Perifractic about it first.

CX16UserSteveC
Posts: 37
Joined: Thu Jul 23, 2020 4:29 pm

Can DE10-Nano Kit hardware emulate Commander X16?

Post by CX16UserSteveC »


Maybe I should have posted this to the "Off-topic Lounge" instead of the "X16 Discussion Lounge" since it's a bit off-topic to the mainstream development. I'm not really seriously proposing to emulate the Commander X16 with the DE10-Nano Kit at this point (this is more of a hypothetical question), but I was curious if something like the DE10-Nano Kit is powerful enough to fully "hardware" emulate the Commander X16. I was also wondering how hard it would be since I believe there are existing FPGA cores for the 6502 and the Commodore 64, and the VERA FPGA code could also perhaps be ported to the DE10-Nano Kit FPGA.

Yuki
Posts: 126
Joined: Mon Apr 27, 2020 1:50 am

Can DE10-Nano Kit hardware emulate Commander X16?

Post by Yuki »


Yeah, I do believe you're in the right sub-forum since you're talking about the X16 and how feasible (and possibly legal) it is to port a simulation of it to the DE10-Nano Kit, but if you're going to go off-topic from the question I'd suggest to make another thread in the Off-topic Lounge ?

TomXP411
Posts: 1783
Joined: Tue May 19, 2020 8:49 pm

Can DE10-Nano Kit hardware emulate Commander X16?

Post by TomXP411 »



3 hours ago, Juju said:




Yeah, the point of the MiSTer is that you would have to reimplement the entire machine in a FPGA, but it would work as on a RetroArch machine, as I understand. It's definitely possible, but whether it would be legal, I'd advise talking about it with the X16 dev team first. Of course, you won't have to reimplement the ROM, which is where the Cloanto IP would be, so at least that.



Now, adding a generic 6502 core would be pretty cool ?



Edit: I did a bit of research, the emulator is under a BSD 2-Clause (unless it's an error), so you can steal its code however you want as long as the licence is retained, so I imagine a software reimplementation would be okay, the thing is that the X16 design and IP would probably be copyrighted so you couldn't do an exact clone of it, at least in hardware. Thing is, we're talking about an FPGA, but I would think it would be more considered of the software side if it's just a core to a larger machine. In any case, still best to consult someone like @Perifractic about it first.



This has been discussed in other threads, but since this thread is explicitly about this topic, it's good to hash it out here. 

Yes - the emulator is BSD-2, but the KERNAL ROM is licensed by Cloanto, with All Rights Reserved. 

So while someone can fork the emulator without needing to ask permission, they cannot fork the ROMs, because those are under license. This would affect the making of an FPGA device, as well, since the FPGA computer still needs the ROM code. 

So what CAN we do? 

We can extend or enhance the emulator - and submit those enhancements back to the official emulator. 

We cannot extend or enhance the emulator and distribute the emulator with the ROMs to other people. 

We can build our own 65C02 computer for our own use, potentially using ideas from the Commander X16 project.

We can't use any Commander X16 firmware (ie: the BASIC or KERNAL ROMs) in our hobby computers. We can't call our hobby computer a Commander X16 or anything that sounds like that. 

 

And to answer the OP's question - again, YES - the MiSTer is powerful enough to emulate the components in the Commander. But until we're given the green light, we should not actually undertake any work-alike projects like that.

In the meantime, check out the existing 6502 cores and see if you can make one of those run at 8MHz. Hint: The Commodore 64 is the wrong core to use as a base, because the system clock is tightly coupled to the VIC chip. The Apple I or Multicomp cores might be a better place to start. 

 

 

 

 

 

Perifractic
Posts: 511
Joined: Sat Apr 25, 2020 4:53 pm

Can DE10-Nano Kit hardware emulate Commander X16?

Post by Perifractic »


Without getting too lengthy, basically @TomXP411 is correct. There is actually a rule about it pinned to the top of the main forum on this site. It's also in the FAQ.

Currently, full reimplementations are at best frowned upon, and at worst copyright theft. Please see FAQ for any more questions on this. Thank you. http://commanderx16.com/faq

Discussing what is theoretically possible is of course fine, up to a point ?

 

 

 

 

 

 

martinot
Posts: 115
Joined: Fri Aug 21, 2020 3:32 pm

Can DE10-Nano Kit hardware emulate Commander X16?

Post by martinot »



On 8/26/2020 at 12:24 AM, CX16UserSteveC said:




I'm wondering if in hindsight it would have made more sense to develop the X16 on something like the DE10-Nano instead of developing a new hardware platform. I understand there was an initial resistance to using FPGAs in the Commander X16, but that resistance was eventually abandoned for the VERA. And there 's a Commodore 64 “hardware emulation core” that could have been used as a starting point.



It would not be possible, I think. 

You could make more use of the FPGA, and make the X16 cheaper by having less discrete components and move more logic to the FPGA (including the CPU). This is how other projects like the C256 Foenix, the Spectrum Next (I posted a link to the ongoing Kickstarter 2 in another part of this forum) and the Mega 65 works. No problem for X16 to take that path in the future (if it so wishes). Would probably lower the cost of producing the unit.

That said, even if I am a great fan of the MiSTer project (will buy and build one myself in time), it could not replace either of those FPGA projects above (Foenix, Next, M65), or the X16 project. The DE10-nano dev kit have too limited I/O to support those projects. The expansion slots in the X16 for example would not be possible. And I think the expansion slots in the X16 is a neat idea and great feature (that was what made the Apple II and the IBM PC so successful in being relevant and gradually upgraded over time).

Short answer;

From a software stand point it is perhaps possible to build FPGA cores of those machines (with more or less difficulty, depending on different memory architectures), for the MiSTer/DE10-nano.

From a hardware and IO stand point it is not possible in the same way to replace those projects, including the X16, with a MiSTer. So be happy that we have the X16 project! ?

TomXP411
Posts: 1783
Joined: Tue May 19, 2020 8:49 pm

Can DE10-Nano Kit hardware emulate Commander X16?

Post by TomXP411 »



4 minutes ago, martinot said:




It would not be possible, I think. 



You could make more use of the FPGA, and make the X16 cheaper by having less discrete components and move more logic to the FPGA (including the CPU). This is how other projects like C256 Foenix, Spectrum Next (I posted link to the ongoing KS in another part of this forum) and the Mega 65 works. No problem for X16 to take that path in the future (if it so wishes). Would probably lower the cost of the producing the unit.



That said, even if I am a great than of the MiSTer project (will buy and build one myself in time), it could not replace either of those FPGA projects above (Foenix, Next, M65), or the X16 project. The DE10-nano dev kit have too limited I/O to support those projects. The expansion slots in the X16 for example would not be possible. And I think the expansion slots in the X16 is a neat idea and great feature (that was what made the Apple II and IBM PC so successful in being relevant and gradually upgraded over time).



Short answer;



From a software stand point it is possible to build FPGA cores of those machines (with more or less difficulty, depending on different memory architectures), for the MiSTer/DE10-nano.



From a hardware and IO stand point it is not possible in the same way to replace those projects, including the X16, with a MiSTer. So be happy that we have the X16 project! ?



The MiSTer doesn't replace any other platform's hardware interfaces, either... there are no expansion ports on ao486, Amiga, Apple ][, or any other of the other cores that have expansion ports on the real hardware. Instead, expansion devices are emulated directly on the FPGA and, where appropriate, their signals are brought to the outside world through USB-attached hardware or software emulation on the ARM CPU. 

Having said that... have you actually looked at a DE10-nano board? There are a total of 72 GPIO pins connected directly to the FPGA. It would be relatively simple to connect those to an external backplane board to drive an expansion bus, if someone felt they needed one. 



 

 

User avatar
Cyber
Posts: 482
Joined: Mon Apr 27, 2020 7:36 am

Can DE10-Nano Kit hardware emulate Commander X16?

Post by Cyber »


 


On 8/27/2020 at 1:40 AM, martinot said:




You could make more use of the FPGA, and make the X16 cheaper by having less discrete components and move more logic to the FPGA (including the CPU).



That's exactly what X16 team is planning to do at stage 3. So just wait patiently. )

 

Post Reply