Jump to content
IGNORED

Potential new hardware


foft

Recommended Posts

Hmmm yes could be related. I guess the image I'm using is de-protected to some degree since it runs with aspeqt on my 600xl. I'll try with aspeqt in case it just doesn't like my sd card sio device.

 

 

Confirmed - works fine using aspeqt on de1, fails using my sd card drive emulation on de1 (and others, but I can't check aspeqt on most of the others...). Looking at the requests using aspeqt, there are some retries with my drive emulation, likely related.

Link to comment
Share on other sites

Sadly none of the current boards support paddles. My core has the logic but needs support on the board (some caps, resistors, a diode and of course a pin on the fpga). So I've used paddles (and touch tablet) on the de1 only - with a little strip board, capacitors and resistors.

 

This is why we need an Atari XL core specific board - with pot support, sio, pbi and cart socket etc etc. I designed an adaptor for de1 with all this but never got round to making them. Mostly indecision on if I should rework some bits:)

  • Like 3
Link to comment
Share on other sites

Apparently the paddles work as analog USB joystick axis. These are planned for MIST for 5200. Till did the firmware, I need to do my end. Not sure about calibration - ie I get -128 to 127 per axis, I can translate that to pot time to charge. Hopefully its the same for analog sticks and this device. Anyone want to send me one? ;)

 

Edit: Should add mcc tv too, but its currently got digital stick support only.

Edited by foft
Link to comment
Share on other sites

  • 2 weeks later...
Hi HiassofT! Thanks, that would be great, good luck with the implementation!


I don’t know how this is in Atari 8-Bit, but the C64 has more than 20 cartridge types. So adding their support on a core or emulator is not a trivial task.


The A8 core already has a good users base, since the core has been ported to many of the most well known FPGA boards used for retro-emulation.


Best regards, Juan


:)

Link to comment
Share on other sites

Yep there are plenty of cartridge types for Atari too - http://ftp.pigwa.net/stuff/collections/holmes%20cd/Holmes%202/PC%20Atari%20Emulators%20Old/Atari%20800%20Win%20Plus%203.0%20Beta/Notes/Cart.txt

 

@Hias - I'll email you, but in short I was thinking of:

Start with car images to start with. The ZPU firmware loads the 16 bytes just for the cart type and exposes this to the decoder logic. Then it loads the rest of the file to SDRAM at a standard location. I think there is enough space in the firmware for 2 load calls and a call to the file selector with a .car filter:-) Have a new VHDL component cart_emulator (or hack into address_decoder.vhdl to begin with) that has the address decoding for each type - with mux on the cart type to enable/select which one. Looks like most are variations of decoding d500 writes different ways to map banks. I made a start on cart emulation in address_decoder.vhdl but this isn't suitable at all since I hadn't done enough research - it just has a code to map 8k blocks in.

Link to comment
Share on other sites

I dont know how this is in Atari 8-Bit, but the C64 has more than 20 cartridge types. So adding their support on a core or emulator is not a trivial task.

This is similar on the Atari but as I wrote the logic for The!Cart I already have some VHDL code I can reuse - so this should be the least of my problems :)

 

So far I've setup my DE1 again (and soldered a joystick adapter to control the settings menu), changed the ZPU firmware (well, only the text on the settings screen for now), recompiled the core (Quartus takes ages... some 5 or 6 minutes on my PC) and successfully started it on my DE1.

post-9299-0-88777200-1410962075_thumb.jpg

 

Looks like I can get started (Mark, be prepared for some emails :)

 

so long,

 

Hias

  • Like 3
Link to comment
Share on other sites

@Hias - I'll email you, but in short I was thinking of:

Start with car images to start with. The ZPU firmware loads the 16 bytes just for the cart type and exposes this to the decoder logic. Then it loads the rest of the file to SDRAM at a standard location. I think there is enough space in the firmware for 2 load calls and a call to the file selector with a .car filter:-) Have a new VHDL component cart_emulator (or hack into address_decoder.vhdl to begin with) that has the address decoding for each type - with mux on the cart type to enable/select which one. Looks like most are variations of decoding d500 writes different ways to map banks. I made a start on cart emulation in address_decoder.vhdl but this isn't suitable at all since I hadn't done enough research - it just has a code to map 8k blocks in.

Thanks for the info, this is basically what I had planned (and it's good to know that my idea wasn't complete crap :). Now I need to get a little bit more familiar with your code before I start hacking :)

 

so long,

 

Hias

Link to comment
Share on other sites

This is similar on the Atari but as I wrote the logic for The!Cart I already have some VHDL code I can reuse - so this should be the least of my problems :)

 

So far I've setup my DE1 again (and soldered a joystick adapter to control the settings menu), changed the ZPU firmware (well, only the text on the settings screen for now), recompiled the core (Quartus takes ages... some 5 or 6 minutes on my PC) and successfully started it on my DE1.

attachicon.gifde1-atari800.jpg

 

Looks like I can get started (Mark, be prepared for some emails :)

 

so long,

 

Hias

Sorry, temporary hijack.. WHAT THE _HELL_ IS THAT GORILLA'S TESTICLE OF A TRACKBALL?!

 

-Thom

Link to comment
Share on other sites

Hah! So many types... Does the The!Cart logic support them all? Looks like some are pretty huge, probably need a real The!Cart for >2MB (on DE1) carts.

The!Cart support some 35 or so types, the largest one being 2MB (a MegaCart). Logic space in the CPLD was quite limited so I couldn't add more modes - but I guess I got the most important ones.

 

Quite some of the carts on the full Atari800 cart list are really obscure things, like 2k or 4k carts, or the Atrax SDX cart which has address and data lines shuffled. There are also a few 5200 carts included in this list (5 or so).

 

so long,

 

Hias

Link to comment
Share on other sites

Sorry, temporary hijack.. WHAT THE _HELL_ IS THAT GORILLA'S TESTICLE OF A TRACKBALL?!

Never thought about gorilla's testicles - to me (and my friends) it always looked more like a tit :)

 

And it's no trackball, it's a Quickshot IX "joyball" - and works like a joystick. The "ball" is half of a sphere, fixed in the middle with a spring (like most joysticks), and you can tilt it to 8 directions to press the 4 microswitches.

 

It is certainly one of the "love it or hate it" kind of things. Personally, I absolutely love it. It takes serveral hours of gameplay to get used to, but after that you can play really relaxed for hours and hours - your hand is just resting on the large ball.

 

so long,

 

Hias

Link to comment
Share on other sites

There are a lot of cartridge types defined for the .CAR format, but many of them are variants. When I implemented The!Cart emulation support in Altirra, I didn't reimplement all of the modes -- what I did was boil them down to about five super-modes with a lookup table. If you're willing to burn memory in copying banks, you could probably implement many of the types in hardware with the following setup:

  • 1 bit - address or data based banking
  • 2 bits - enable banking on read and write accesses
  • 16x2 bit table - ignore/disable/enable window based on A4-A7
  • 2 bits - enable $8000-9FFF and $A000-BFFF windows

Then, just have the ZPU replicate banks to 4MB of memory (256 banks of 16K based on banking value). If you don't want to always use that much memory, then throw in an address mask register.

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...
Hi Mark, how are you.


I am working on a txt quick reference guide for the A8 core. Can you help me with these questions please:


When the Chameleon’s right blue button is pressed for a short time, is it doing a “RESET” (F9) or a cold start (F10)?


When the CDTV Remote Control “STOP” button is pressed, is it doing a “RESET” (F9) or a cold start (F10)?


Where is the “BREAK” Atari button on the PS/2 keyboard?


Thanks!

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...