Jump to content
IGNORED

HOKEY demo


batari

Recommended Posts

8 hours ago, Kitrinx said:

It's hard to see, but that just looks like a microcontroller plugged into a carrier board. Is this going to go the same route as that 2600 stuff that is just a grossly overpowered arm cpu running software emulators of hardware parts?

You may have terminology confused or don't understand how the HOKEY works. This isn't software emulation, it's hardware emulation, also called in-circuit emulation. A FPGA is also considered a form of hardware emulation as it also replicates the hardware.

 

Software emulators, by contrast, run software intended for other platforms. HOKEY is positively not a software emulator. The HOKEY runs a RTOS I created in 100% assembly language. It confirms to the actual, strict physical timing of the system down to the machine cycle level, like FPGAs do. Software emulators don't work that way.

 

Some reading: https://en.wikipedia.org/wiki/Hardware_emulation

 

The 2600 stuff is also hardware emulation, but with a microcontroller instead of an FPGA, and I do understand that some have issues with microcontrollers on a cart board even if the microcontroller isn't actually running game code. If anyone doesn't understand how a microcontroller can do literally the same thing as so-called "real hardware" or simply does not like the use of a microcontroller instead of an FPGA, by all means buy only FPGA-based hardware. There will always be those purists who think one method is more pure than another for doing the same thing.

 

Because HOKEY is microcontroller-based, it will also be able to run user code like the 2600's cart boards can, and that is why I say the HOKEY could do the same sorts of things that a Sound Blaster sound card could do. However, the Sound Blaster sound card, released in the late 80s well within the commercial life of the 7800, also employs a microcontroller for sound generation, so unlike the 2600 boards with a copressor, you actually have a precedent for microcontroller-based sound hardware that was already set long ago.

  • Like 9
Link to comment
Share on other sites

On 12/19/2021 at 2:13 AM, batari said:

Arcade HOKEY is designed specifically for arcade games. At $21, it's designed to be the lowest-cost entry in the Arcade POKEY market. It supports POKEY sound plus the pot ports needed for some arcade games. It uses gold-plated pins for easy insertion into a socket. Like the Standard HOKEY, it uses true analog output and is capable of 60 db of dynamic range.

Could this version be used in 7800 paddle homebrews to offload CPU time when reading the paddles?

Link to comment
Share on other sites

2 minutes ago, Karl G said:

Could this version be used in 7800 paddle homebrews to offload CPU time when reading the paddles?

The 7800 paddle lines are hard-wired to TIA, just like a 2600. You’d have to do some kind of hardware mod/hack to re-direct those lines to the cart; one complication is the cartridge connector does not have those signals, so you’d need a separate wire harness out the 7800 case and over to the cartridge, which is infeasible for most users. Would be a fun proof-of-concept as a one-off hobbyist hack, but that’s about it. 

Edited by DrVenkman
spelling
  • Like 4
Link to comment
Share on other sites

On 12/22/2021 at 4:13 AM, batari said:

You may have terminology confused or don't understand how the HOKEY works. This isn't software emulation, it's hardware emulation, also called in-circuit emulation. A FPGA is also considered a form of hardware emulation as it also replicates the hardware.

 

Software emulators, by contrast, run software intended for other platforms. HOKEY is positively not a software emulator. The HOKEY runs a RTOS I created in 100% assembly language. It confirms to the actual, strict physical timing of the system down to the machine cycle level, like FPGAs do. Software emulators don't work that way.

 

Some reading: https://en.wikipedia.org/wiki/Hardware_emulation

 

The 2600 stuff is also hardware emulation, but with a microcontroller instead of an FPGA, and I do understand that some have issues with microcontrollers on a cart board even if the microcontroller isn't actually running game code. If anyone doesn't understand how a microcontroller can do literally the same thing as so-called "real hardware" or simply does not like the use of a microcontroller instead of an FPGA, by all means buy only FPGA-based hardware. There will always be those purists who think one method is more pure than another for doing the same thing.

 

Because HOKEY is microcontroller-based, it will also be able to run user code like the 2600's cart boards can, and that is why I say the HOKEY could do the same sorts of things that a Sound Blaster sound card could do. However, the Sound Blaster sound card, released in the late 80s well within the commercial life of the 7800, also employs a microcontroller for sound generation, so unlike the 2600 boards with a copressor, you actually have a precedent for microcontroller-based sound hardware that was already set long ago.

No, I don't think I'm confused. If you're using a CPU to interact with hardware, it's software emulation. For example, in our 486 core, which is an FPGA design, the OPL3 chip used by the sound blaster is run on a z80 softcore cpu, via software emulation. It's not supposed to be this way, and it doesn't work very well consequently, but nobody has taken the time to implement it properly. It does have pinouts like a microcontroller, but it's still not running in parallel internally like hardware. The distinction between software and hardware is that hardware runs based on it's schematic, while software runs by approximating hardware behavior on a general purpose cpu. If your thing is written in a assembly, it is software, by definition.

 

It seems to me what you are creating here is going to be another situation of anachronistic hardware being introduced, and another round of difficult-to-support homebrews will arise from this. I think you should really consider taking a step back here and learning to do this properly on an FPGA or CPLD so that period-appropriate mappers can be introduced. I know that I won't be able to recreate an arm chip of such a magnitude in my FPGA 7800/2600 core. The FPGA simply can't handle it, and  the complexity of the cpu is greater than the rest of the system and all it's chips and mappers combined. All this does is shrink the market and the audience for people making homebrew, since it then limits it seemingly to only people willing to use the boards that you sell. Why not make some nice RTL that is sustainable so this homebrew can be purchased by a larger audience, and enjoyed and preserved for the long term? The MiSTer community regularly promotes authors that sell ROMs, and this will just exclude them.

 

Having worked on the SNES, Genesis, PC Engine, NES, and several other consoles cores, no other system has an equivalent issue where a mapper is unable to be reproduced. Even NES with it's 500 mappers doesn't have anything like this.  

  • Sad 1
Link to comment
Share on other sites

8 minutes ago, Kitrinx said:

know that I won't be able to recreate an arm chip of such a magnitude in my FPGA 7800/2600 core.

Then just use POKEY and YM cores, since most all the current and planned homebrews are using that. Or design, manufacture and market the hardware yourself. 


It’s not Fred’s job to make YOUR job easier. 

  • Like 8
Link to comment
Share on other sites

I suspect most homebrew authors will be targeting the POKEY for sound, and using the HOKEY as an affordable way to implement it in carts. In these cases, emulators and FPGA implementations will just need to support the POKEY in order to run these games correctly.

  • Like 2
Link to comment
Share on other sites

Oh - please - can we just have Hokey-ducks swimming, diving, flying, playing and water-jumping … all over the place…???

 


… again…

 

… and let creative multiplicity thrive… 

 

   … for the overall good of all and every retro-gamer…. ?

 

 

- - -

 

Let this sound-chip make its overtoures…!!!

 

 

thats what we need…

 


So

I’m waiting.

 

So close to place another order

 

 

Let a t a r i get attention…


 

Or just have the hardcore-fans do it all… and kerp it goin’…

 

just for the fun…

 

Edited by Giles N
Link to comment
Share on other sites

8 hours ago, Kitrinx said:

No, I don't think I'm confused. If you're using a CPU to interact with hardware, it's software emulation. For example, in our 486 core, which is an FPGA design, the OPL3 chip used by the sound blaster is run on a z80 softcore cpu, via software emulation. It's not supposed to be this way, and it doesn't work very well consequently, but nobody has taken the time to implement it properly. It does have pinouts like a microcontroller, but it's still not running in parallel internally like hardware. The distinction between software and hardware is that hardware runs based on it's schematic, while software runs by approximating hardware behavior on a general purpose cpu. If your thing is written in a assembly, it is software, by definition.

 

It seems to me what you are creating here is going to be another situation of anachronistic hardware being introduced, and another round of difficult-to-support homebrews will arise from this. I think you should really consider taking a step back here and learning to do this properly on an FPGA or CPLD so that period-appropriate mappers can be introduced. I know that I won't be able to recreate an arm chip of such a magnitude in my FPGA 7800/2600 core. The FPGA simply can't handle it, and  the complexity of the cpu is greater than the rest of the system and all it's chips and mappers combined. All this does is shrink the market and the audience for people making homebrew, since it then limits it seemingly to only people willing to use the boards that you sell. Why not make some nice RTL that is sustainable so this homebrew can be purchased by a larger audience, and enjoyed and preserved for the long term? The MiSTer community regularly promotes authors that sell ROMs, and this will just exclude them.

 

Having worked on the SNES, Genesis, PC Engine, NES, and several other consoles cores, no other system has an equivalent issue where a mapper is unable to be reproduced. Even NES with it's 500 mappers doesn't have anything like this.  

Well guess what? Nobody fucking cares. Go back to your Nintendo stuff and leave the hard working Atari people alone. We are  not into the drama that you want to bring.

We are thankful for what we have. 

 

  • Like 4
  • Thanks 1
Link to comment
Share on other sites

8 hours ago, Kitrinx said:

blah, blah, blah ... and this will just exclude them.

No, it won't, because nobody is targeting the HOKEY directly, instead they will be writing their games to support the POKEY (and possibly YM as well).  This gives homebrew authors an incentive to use POKEY audio in their games, knowing it can be supported inexpensively in hardware thanks to the HOKEY.  It's a big win from that perspective, especially considering the relatively poor TIA audio that the 7800 is hindered with.

 

 ..Al

  • Like 15
Link to comment
Share on other sites

15 hours ago, Kitrinx said:

No, I don't think I'm confused. If you're using a CPU to interact with hardware, it's software emulation. For example, in our 486 core, which is an FPGA design, the OPL3 chip used by the sound blaster is run on a z80 softcore cpu, via software emulation. It's not supposed to be this way, and it doesn't work very well consequently, but nobody has taken the time to implement it properly. It does have pinouts like a microcontroller, but it's still not running in parallel internally like hardware. The distinction between software and hardware is that hardware runs based on it's schematic, while software runs by approximating hardware behavior on a general purpose cpu. If your thing is written in a assembly, it is software, by definition.

 

It seems to me what you are creating here is going to be another situation of anachronistic hardware being introduced, and another round of difficult-to-support homebrews will arise from this. I think you should really consider taking a step back here and learning to do this properly on an FPGA or CPLD so that period-appropriate mappers can be introduced. I know that I won't be able to recreate an arm chip of such a magnitude in my FPGA 7800/2600 core. The FPGA simply can't handle it, and  the complexity of the cpu is greater than the rest of the system and all it's chips and mappers combined. All this does is shrink the market and the audience for people making homebrew, since it then limits it seemingly to only people willing to use the boards that you sell. Why not make some nice RTL that is sustainable so this homebrew can be purchased by a larger audience, and enjoyed and preserved for the long term? The MiSTer community regularly promotes authors that sell ROMs, and this will just exclude them.

 

Having worked on the SNES, Genesis, PC Engine, NES, and several other consoles cores, no other system has an equivalent issue where a mapper is unable to be reproduced. Even NES with it's 500 mappers doesn't have anything like this.  

You are confused with software emulation, as that has a specific definition that HOKEY does not fall under. You seem to be hung up on the term "software" for some reason, probably referring to the code running on the CPU (which is not "software emulation"), while somehow not realizing that FPGAs also have "software" too, written in HDLs. HDL code can, in theory, represent literally anything that traditional CPU code can. A sufficiently powerful FPGA can represent a CPU, and there are definitely sufficiently powerful FPGAs that can represent a simple ARM processor, and you can even download and use soft cores of ARM processors for free use on FPGAs. So suppose you were to replicate the ARM chip on HOKEY with a sufficiently powerful FPGA. Then would it be OK in the strange logic presented here?

 

Also, what is it about FPGAs, which literally did not exist in half of the 80s and could not be found in any appreciable size for many years after, that makes them somehow not even more anachronistic, especially when they can be found with far more power than ever could be imagined from a simple ARM chip?

 

I know how to write HDLs and use CPLDs and FPGAs. I choose not to because good engineering also means designing an economical product and FPGAs cost a hell of a lot more.

 

Lastly, I don't understand the point about shrinking the market. All specifications for ARM-assisted Atari 2600 games are given and emulated in Stella with open source. It's not like we're a secret squirrel society.

  • Like 8
Link to comment
Share on other sites

  • 4 weeks later...
  • 4 weeks later...
  • 1 month later...
On 12/19/2021 at 7:13 AM, batari said:

the ring buffer vastly eases the programming difficulty on the 7800 side over other options that require precisely-timed interrupts, which don't work well anyway on the 7800 due to Maria DMA.

Could you please give more details on how this ring buffer will work?

 

Link to comment
Share on other sites

Regarding millie and molly ...

 

I will look at it and let you know.  If you can also make recordings of the tunes in HOKEY, that will help too.  No songs here use two tone mode ... SKCTL=$03, the standard setting.

 

I will look up the AUDCTL settings and get back to you on them.

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

  • 3 months later...

So - if all you tech-guys will just dumb-down the description of the progress for us lay-gamers; 

- how far has the process come?

- what remains a) to make it compatible with AA-store-titles, b) new/other homebrews using pokey-sound?

- is the process a question of hardware-assembly or a matter of having software that enables HOKEY to perform like POKEY…?

 

- - -

The reasons I ask is:

1) wondering when I can order Pokey-games from AA-store again (with hokey),

2) general interest in Atari-stuff and how-things-work

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...