Jump to content

Change of product direction, good and bad news!


What should we do?  

374 members have voted

  1. 1. Should we release the Commander X8?

    • Yes, it should replace Phase-3. It's good enough.
    • Yes, but you should still offer a Phase-3 Commander X16 eventually too.
    • No, don't release the X8, stick with the original plan.
  2. 2. Should we still make a Phase-2 product?

    • Yes, Phase-2 is what I want
    • No, skip and go straight to Phase-3
  3. 3. For the X16 Phase-1, do you prefer a kit or a somewhat more expensive pre-assembled board?



Recommended Posts

1 minute ago, Scott Robison said:

I think part of the problem is "dictionary definitions" vs "real world meaning of words". Yes, a strict reading of the dictionary states that FPGA emulates a CPU, but at the same time, one could say every automobile after the first automobile can be said to be emulating its predecessor. And those automobiles (aka horseless carriages) emulated a predecessor. And every hammer after the first emulated the first. Every building after the first. Etc Etc Etc.

Yes, using dictionary definitions rather than the technical definitions is part of it ... the technical usage of simulation for, eg, a soft 6502 core and emulation for, eg, VICE is not subject to the same confusion, while in casual English usage, "emulation" and "simulation" are not so sharply differentiated.

  • Like 1
Link to comment
Share on other sites

Oh man - how can I not take this as personal? Okay.

I know what a Raspberry Pi is. I know what a FPGA is. If I wanted a Raspberry PI C64, I'd already have it - because it's already a product. The C64 is already out for about 130 bucks.

https://www.amazon.com/dp/B08GMTJYXJ/

Again - I'd have fleeting interest in it because I'd likely make it into something else instead of use it as it came. If the X8 is a Crowdfunding bonus, I'd get it because it's something, but I'm here for the finished product.

And yeah, It's a dream to be able to program old stuff but remain in the 21st century. I don't expect enough work to be done between compatibility and reality to eliminate the absolutely absurd artifacts of 1970's programming in light of the 21st century development environments and requirements. If the goal is to make a usable computer, I will insist resolving the lower levels of problems with BASIC v2 and the C64's low level systems is a critical bit of work. I know some here don't seem to have any problem with this, but I am absolutely sure you'd reach a wider audience and ensure lasting use and value of the product if, like providing a HDMI or a USB or SD card i/o, you do the same engineering work in the software side of things. We do not use computers the same way as we did in the late 70's and early 80's. Proof enough is the rapid evolution of all those middle soft-parts before DOS computers came into the norm. Software is not developed to completion and subsequently supported by a single guru with unlimited time in a garage, anymore. It is the exception now, not the rule. Waiting for manna from heaven is not how you get a killer app. You need a development environment and ecosystem with high level ease-of-use. The cuttthroat University CS department "Make-everything-as-arcane-as-possible" way is not the way of real life.

I want the project to succeed at a wider level of appeal. I see the above as a critical part of it. There's already plenty of collector's items out there, as well as pretenders and emulators that are far cheaper and do the job - but they aren't real computers, anymore. I want the X16 to be more than a mantle-piece for the wide audience it's said to be intended for. The project being at a crossroads is perhaps the best thing that could happen to it.

I gave it a serious shot, and unfortunately I came up empty. I don't have it in me to try again without serious improvements in the middling levels and in the ecosystem. I would LIKE to try again, but without the cookbook or the environment - it's just me messing around in pico on a university unix system. I want to complete projects in a timely and reliable manner. Nothing wrong with that. I don't feel like I'm barking up the wrong tree, here.

Link to comment
Share on other sites

6 minutes ago, BruceMcF said:

Yes, using dictionary definitions rather than the technical definitions is part of it ... the technical usage of simulation for, eg, a soft 6502 core and emulation for, eg, VICE is not subject to the same confusion, while in casual English usage, "emulation" and "simulation" are not so sharply differentiated.

The interesting thing is that I'm engaged with this exact topic in a FB group right now. I don't know what the credentials of the other person are, but my instinct is that it is someone who's never worked with FPGA.

  • Like 1
Link to comment
Share on other sites

13 minutes ago, Starsickle said:

Oh man - how can I not take this as personal? Okay.

I know what a Raspberry Pi is. I know what a FPGA is. If I wanted a Raspberry PI C64, I'd already have it - because it's already a product. The C64 is already out for about 130 bucks.

https://www.amazon.com/dp/B08GMTJYXJ/

Again - I'd have fleeting interest in it because I'd likely make it into something else instead of use it as it came. If the X8 is a Crowdfunding bonus, I'd get it because it's something, but I'm here for the finished product.

And yeah, It's a dream to be able to program old stuff but remain in the 21st century. I don't expect enough work to be done between compatibility and reality to eliminate the absolutely absurd artifacts of 1970's programming in light of the 21st century development environments and requirements. If the goal is to make a usable computer, I will insist resolving the lower levels of problems with BASIC v2 and the C64's low level systems is a critical bit of work. I know some here don't seem to have any problem with this, but I am absolutely sure you'd reach a wider audience and ensure lasting use and value of the product if, like providing a HDMI or a USB or SD card i/o, you do the same engineering work in the software side of things. We do not use computers the same way as we did in the late 70's and early 80's. Proof enough is the rapid evolution of all those middle soft-parts before DOS computers came into the norm. Software is not developed to completion and subsequently supported by a single guru with unlimited time in a garage, anymore. It is the exception now, not the rule. Waiting for manna from heaven is not how you get a killer app. You need a development environment and ecosystem with high level ease-of-use. The cuttthroat University CS department "Make-everything-as-arcane-as-possible" way is not the way of real life.

I want the project to succeed at a wider level of appeal. I see the above as a critical part of it. There's already plenty of collector's items out there, as well as pretenders and emulators that are far cheaper and do the job - but they aren't real computers, anymore. I want the X16 to be more than a mantle-piece for the wide audience it's said to be intended for. The project being at a crossroads is perhaps the best thing that could happen to it.

I gave it a serious shot, and unfortunately I came up empty. I don't have it in me to try again without serious improvements in the middling levels and in the ecosystem. I would LIKE to try again, but without the cookbook or the environment - it's just me messing around in pico on a university unix system. I want to complete projects in a timely and reliable manner. Nothing wrong with that. I don't feel like I'm barking up the wrong tree, here.

Yeah, I've suggested at least a couple of important (to me) things, but remember this is 8BG's vision.  If you go back and watch his original videos about this and your wants aren't expressed in those videos, then what?

Link to comment
Share on other sites

37 minutes ago, Scott Robison said:

The interesting thing is that I'm engaged with this exact topic in a FB group right now. I don't know what the credentials of the other person are, but my instinct is that it is someone who's never worked with FPGA.

Part of the confusion is that we call it "programming" an FPGA, but rather than creating a binary or being interpreted, an "FPGA program" is used to generate a netlist which is then translated to a concrete hardware configuration for the FPGA.

Link to comment
Share on other sites

1 hour ago, BruceMcF said:

Yes, using dictionary definitions rather than the technical definitions is part of it ... the technical usage of simulation for, eg, a soft 6502 core and emulation for, eg, VICE is not subject to the same confusion, while in casual English usage, "emulation" and "simulation" are not so sharply differentiated.

You could argue many CPUs emulate CPUs, with microcode 😉

Link to comment
Share on other sites

I think another important consideration is that we live in what is essentially the science fiction future of the 1970s and 1980s, where people have computerized high resolution graphical tablets that they carry around with them everywhere. At the bear minimum this means that it's possible to take the amazing VIC20 printed manual and turn it into a fully functional, interactive 2D/3D representation (in the form of an HTML5 website) of the VIC20 hardware and software that works not only on one of those nifty graphical tablets, but on literal millions of other devices too, from cheap Chromebooks to million dollar workstations.

In short, the X8 and X16 do not exist in a vacuum and I think it is kind of silly to pretend that they do.

For those who do not wish to assemble a full sized X16 kit, the only difference between an entirely FPGA version and one made with discreet components is the physical size of the circuit boards. Otherwise the machines are functionally identical. In today's day and age, where a manual can so detailed as to be a complete virtualized replica, if you're not interested in the kit aspect (and you lack the electronics lab to maintain and troubleshoot said kit), then it doesn't really matter what's on the physical circuit board.

Even good old block diagrams and circuits are plenty good enough to teach people what's going on inside the computer, how their code gets translated into physical actions. Very few people are going to sit there with an oscilloscope and diagnose a circuit just to learn how their assembly code makes a sprite function, etc. But if that were truly important, the community could absolutely make an interactive website that allows a person to explore those very concepts without having to own a lab or even know what a multi-meter is. If the X16 was really about teaching people how an 8 bit computer works, such a website is the most accessible, affordable, and contributor-friendly way to go about it, because it would simply be available to everyone all the time, just like YouTube videos.

I admit that this was a bit of a rant, but I find the pedantic nature of some of these discussions to be very frustrating. And that's just reading them; I really don't participate in the "internet" anymore.

  • Like 2
Link to comment
Share on other sites

3 hours ago, Starsickle said:

 Software is not developed to completion and subsequently supported by a single guru with unlimited time in a garage, anymore. It is the exception now, not the rule. Waiting for manna from heaven is not how you get a killer app. You need a development environment and ecosystem with high level ease-of-use. The cuttthroat University CS department "Make-everything-as-arcane-as-possible" way is not the way of real life.

It's probably up to the members of this group to write the code for development tools.  I wrote an assembly language editor that's really a fancy Monitor program with labels, and I've been using that a lot, but most of my development for the X16 has been on spreadsheets.

Other people have worked on things like sprite editors and text editors and palette editors and music sequencers, and I believe David Murray has a version of PETDRAW out for the X16. There's also a lot of c libraries being written by people here.

Link to comment
Share on other sites

I still reckon the X8 could be a really cool devices if the video memory access mechanism could be modified to work just like the X16's will for code consistency, then functionally its just a cut down Memory + sound hardware version of the X16, but otherwise identical in operation. I think that's something I'd buy for <$100.

 

  • Like 1
Link to comment
Share on other sites

25 minutes ago, Wonderdog said:

I still reckon the X8 could be a really cool devices if the video memory access mechanism could be modified to work just like the X16's will for code consistency, then functionally its just a cut down Memory + sound hardware version of the X16, but otherwise identical in operation. I think that's something I'd buy for <$100.

 

I agree.  As much as the X16 can be a compatible upgrade for X8 users, the more compelling it is, I think.

  • Like 1
Link to comment
Share on other sites

1 hour ago, Wonderdog said:

I still reckon the X8 could be a really cool devices if the video memory access mechanism could be modified to work just like the X16's will for code consistency, then functionally its just a cut down Memory + sound hardware version of the X16, but otherwise identical in operation. I think that's something I'd buy for <$100.

We'd have to ask @Frank van den Hoef whether that is even feasible ... that is, whether the X8 has the spare logic resources to do the auto-incrementing memory access.

If it's feasible, then a 32byte space added to the I/O device control space (which is I think are part of the $0600 page?) would allow CX16 binaries to be easily patched to run on the X8 ... as long as it fits in the RAM and Video RAM requirements.

Edited by BruceMcF
  • Like 1
Link to comment
Share on other sites

1 hour ago, BruceMcF said:

Quite so ... any abstract distinction is prone to running into border cases like that.

Exactly. Someone else brought up that very point regarding microcode. The other side in the debate seemed unwilling to accept that anything other than a 100% transistor for transistor, mask identical copy, is "real" and everything else is "emulation".

Now, to be fair to them, their point was that emulation is often used in a pejorative sense and that it isn't a dirty word and that calling FPGA emulation isn't meant as a bad thing. My point was "you can have good and bad software emulation, and you can have good and bad FPGA implementations; the difference is not the tools, it is the craftsman using the tools; regardless, words and more than the sum of their dictionary definitions, and quality software emulation is sufficiently different than quality FPGA 'emulation' that they deserve different words to describe them".

Edit: Fixed a typo and "the difference is the tools" should have been "the difference is not the tools, it is the craftsman using the tools". Too little time spent proofreading.

Edited by Scott Robison
  • Like 1
Link to comment
Share on other sites

Yes, the reason that there is a technical distinction is not because one is good and the other is bad, but because they are different ways to replicate the functioning of existing hardware with different strengths and weaknesses.

Of course, just as emulation is not the only thing software can do, simulation is not the only thing that SPLDs / CPLDs / FPGAs can do ... in the case of Vera, it is implementing an all-new linebuffer VGA display.

Edited by BruceMcF
Link to comment
Share on other sites

9 minutes ago, BruceMcF said:

Yes, the reason that there is a technical distinction is not because one is good and the other is bad, but because they are different ways to replicate the functioning of existing hardware with different strengths and weaknesses.

Of course, just as emulation is not the only thing software can do, simulation is not the only thing that SPLDs / CPLDs / FPGAs can do ... in the case of Vera, it is implementing an all-new linebuffer VGA display.

Yes, the argument against that thought is that the FPGA is emulating the future yet to be implemented ASIC that implements that same functionality. Really? How do I emulate something that doesn't even exist and has never existed? #lesigh Wouldn't it be more accurate if you're going to insist on that definition that whatever follows is the emulation? At least then there is some logical internal consistency to the argument.

Edited by Scott Robison
  • Like 1
Link to comment
Share on other sites

4 hours ago, Tatwi said:

I think another important consideration is that we live in what is essentially the science fiction future of the 1970s and 1980s, where people have computerized high resolution graphical tablets that they carry around with them everywhere. At the bear minimum this means that it's possible to take the amazing VIC20 printed manual and turn it into a fully functional, interactive 2D/3D representation (in the form of an HTML5 website) of the VIC20 hardware and software that works not only on one of those nifty graphical tablets, but on literal millions of other devices too, from cheap Chromebooks to million dollar workstations.

In short, the X8 and X16 do not exist in a vacuum and I think it is kind of silly to pretend that they do.

For those who do not wish to assemble a full sized X16 kit, the only difference between an entirely FPGA version and one made with discreet components is the physical size of the circuit boards. Otherwise the machines are functionally identical. In today's day and age, where a manual can so detailed as to be a complete virtualized replica, if you're not interested in the kit aspect (and you lack the electronics lab to maintain and troubleshoot said kit), then it doesn't really matter what's on the physical circuit board.

That would be "the only functional difference" rather than "the only difference" ... the difference between having an ASIC 65C02 and having a (correctly implemented) 65C02 soft core is a mostly non-functional difference, similar to the difference between having a Nike swoosh sewed onto shoes with Nike's approval and without Nike's approval.

But in this context, there is a quite substantial difference, in that the mooted X16c would likely have one or two slots compatible with the slots for the X16p, and since the slot brings out enough 65C02 lines to allow bus mastering cards, it would allow a bus mastering 65816 card (or Z80, 6809 or 68K, if anyone wishes to make one), and the X16e concept (which might not ever be made if the X8 path is taken) was not going to have a slot.

Link to comment
Share on other sites

26 minutes ago, Scott Robison said:

Yes, the argument against that thought is that the FPGA is emulating the future yet to be implemented ASIC that implements that same functionality. Really? How do I emulate something that doesn't even exist and has never existed? #lesigh Wouldn't it be more accurate if you're going to insist on that definition that whatever follows is the emulation? At least then there is some logical internal consistency to the argument.

You're on the right track with that thought.

The common phrase is: "software is emulation. FPGA is implementation."

Simply put, an FPGA is a set of logic gates that can be configured to any arbitrary configuration. A CPU is a series of logic gates configured to a specific configuration. In fact, early mainframe CPUs were also similarly configurable. This is where the term "microcode" comes from: the CPU was not a hard-coded device, like a modern MCPU, but was actually a series of components that ran a program that then ran the computer's machine language instruction set. 

We get into splitting of hairs when talking about "simulation" vs "emulation", but the answer there is very simple: the words mean the same thing. The difference is only the context: we more often talk about simulation when discussing physical things and emulation when talking about computers (ie: NES emulator), but the simple fact is that an NES emulator is also an NES simulator. A flight simulator is also an airplane emulator. The two words are interchangeable and differ only in nuance, not in meaning. 

So is an FPGA an "emulator"? No. While it can be used as an emulator, such as when building a core that replicates an existing system, but that's not an "emulator" any more than the Laser 128 is an Apple Emulator. No, we call the Laser 128 an Apple "clone", because it's a hardware implementation of the Apple IIe specification. By the same token, an FPGA is an implementation using programmable logic, rather than fixed logic.

 

 

 

Edited by TomXP411
  • Like 1
Link to comment
Share on other sites

12 minutes ago, BruceMcF said:

That would be "the only functional difference" rather than "the only difference" ... the difference between having an ASIC 65C02 and having a (correctly implemented) 65C02 soft core is a mostly non-functional difference, similar to the difference between having a Nike swoosh sewed onto shoes with Nike's approval and without Nike's approval.

But in this context, there is a quite substantial difference, in that the mooted X16c would likely have one or two slots compatible with the slots for the X16p, and since the slot brings out enough 65C02 lines to allow bus mastering cards, it would allow a bus mastering 65816 card (or Z80, 6809 or 68K, if anyone wishes to make one), and the X16e concept (which might not ever be made if the X8 path is taken) was not going to have a slot.

That's not due to the FPGA, though. That's entirely due to size considerations. There's no reason the team could not build an FPGA Commander X16 with an expansion bus - just replacing the 6502, CIAs, and logic chips with a single, large FPGA.

Link to comment
Share on other sites

34 minutes ago, TomXP411 said:

So is an FPGA an "emulator"? No. While it can be used as an emulator, such as when building a core that replicates an existing system, but that's not an "emulator" any more than the Laser 128 is an Apple Emulator. No, we call the Laser 128 an Apple "clone", because it's a hardware implementation of the Apple IIe specification. By the same token, an FPGA implantation is not an implementation: it's simply an implementation using programmable logic, rather than fixed logic. Some folks perhaps don't understand the distinction between an FPGA and a microcontroller, but that's another conversation. 

Thank you for this. Clone is the word I've neglected to use. I'll try to remember it should the conversation continue after my most recent post about pedantry.

Naturally, *I* am never pedantic. When it seems like I am it is a misunderstanding because the information I'm sharing is valuable. When other people think they're sharing valuable information, they are sometimes being pedantic. I learned this at talk radio host school. 😄

Edit: Yet Another Typoh.

Edited by Scott Robison
  • Haha 1
Link to comment
Share on other sites

1 minute ago, Scott Robison said:

Thank you for this. Clone is the word I've neglected to use. I'll try to remember it should the conversation continue after my most recent post about pedantry.

Naturally, *I* am never pedantic. When it seems like I am it is a misunderstanding because the information I'm sharing is valuable. When other people think they're sharing valuable information, they are sometimes being pedantic. I learned at that talk radio host school. 😄

Now who's splitting hairs?  😜

  • Like 1
Link to comment
Share on other sites

24 minutes ago, TomXP411 said:

That's not due to the FPGA, though. That's entirely due to size considerations. There's no reason the team could not build an FPGA Commander X16 with an expansion bus - just replacing the 6502, CIAs, and logic chips with a single, large FPGA.

This is similar to the "no difference" vs "no functional difference".

There is no technical reason that they couldn't do that, but that doesn't guarantee that they could actually do it ... the issues involve market demand and economies of scale considerations.

Link to comment
Share on other sites

9 hours ago, Starsickle said:

Oh man - how can I not take this as personal?

No offense intended, and certainly not in any way personal. Your comment is not the only one in this long thread to imply that the X8 is emulation on a Pi, when it clearly is stated by T8BG to be FPGA.

Link to comment
Share on other sites

6 hours ago, Scott Robison said:

Now, to be fair to them, their point was that emulation is often used in a pejorative sense and that it isn't a dirty word and that calling FPGA emulation isn't meant as a bad thing. My point was "you can have good and bad software emulation, and you can have good and bad FPGA implementations; the difference is not the tools, it is the craftsman using the tools; regardless, words and more than the sum of their dictionary definitions, and quality software emulation is sufficiently different than quality FPGA 'emulation' that they deserve different words to describe them".

Often you have to make choices. Resource limitations force poorer quality emulation. The CX16 itself has the problem that it has hardware based sprite collision detection, which is easy enough in electronics but a complete pain in the neck in code if you want bit level accuracy. I don't think the emulator does it, it certainly didn't. There is a case to be made for removing it for precisely this reason.

Backwards to this is the X8 Window, which is not difficult in FPGA but would be a swine to do in logic.

Edited by paulscottrobson
  • Like 1
Link to comment
Share on other sites

On 9/22/2021 at 1:02 PM, maktos said:

MY POINT: Now that this post has been made, and David has his feedback from the community -- he needs to follow it up -- QUICKLY -- with a firm decision

David hasn't checked this forum in over three weeks and frankly I don't blame him. His interests and productivity lie elsewhere. There is still substantial technical work to do here and even a basic kit release will involve a financial risk I doubt anyone is willing to take. Someone will need deep pockets or start remortgaging property when the unforeseen crowd funding logistics go wrong.

I think the only way forward at this point is to open source the entire project. Sharing all the details with the community will bring in the missing resources and energy to help push this over the line. There could be a sunk cost fallacy here though and that might explain why things have stalled out in this near-permanent limbo.

  • Like 1
Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

Please review our Terms of Use