Jump to content

Photo

it's fun to play on the F. P. G. A.

FPGA emulation vhdl verilog

140 replies to this topic

#126 Kismet OFFLINE  

Kismet

    Moonsweeper

  • 445 posts

Posted Fri Dec 1, 2017 11:23 PM

Have you heard about MicroCore Labs' FPGA implementations of retro CPUs? Check out the blog with a lot of interesting details and photos, there are also links to YT videos which show how these can be used as drop-in replacements for original CPUs. Recently one of the cores has even been open sourced.

 

It will be interesting if someone can do a 100% cycle-accurate 8088/8086 to run some of these old games that basically flip out when run on something too fast. Case examples being software designed for the PCjr/Tandy 1000, and original IBM 5150 PC model where they basically blow up on anything faster. (Ultima 2's divide by zero error being the one that comes to mind, but there's plenty of other games that simply run too fast, or emit hissing sound/noise instead of beeps because the PIT is too fast)



#127 retro_fan OFFLINE  

retro_fan

    Chopper Commander

  • 135 posts

Posted Fri Dec 8, 2017 1:40 PM



#128 retro_fan OFFLINE  

retro_fan

    Chopper Commander

  • 135 posts

Posted Mon Dec 25, 2017 7:39 AM

Smokemonster ROM/BIOS pack open source preservation project (GitHub)

 

To learn more about this very interesting to FPGA devices' users game preservation project watch the interview with Smokemonster by RetroRGB (go to 18:41):

 

 

I wonder whether it will be adapted for computer FPGA cores (MiST, for instance) as well...


Edited by retro_fan, Mon Dec 25, 2017 7:40 AM.


#129 Newsdee OFFLINE  

Newsdee

    Stargunner

  • Topic Starter
  • 1,237 posts

Posted Mon Dec 25, 2017 8:58 AM

I wonder whether it will be adapted for computer FPGA cores (MiST, for instance) as well...


It's alrrady been done with RomVault. See instructions and DAT files here: https://github.com/m...i/RomManagement

#130 Kosmic Stardust OFFLINE  

Kosmic Stardust

    Princess Rescuer

  • 17,795 posts
  • Location:Milky Way Galaxy

Posted Mon Dec 25, 2017 1:53 PM

Smokemonster ROM/BIOS pack open source preservation project (GitHub)
 
To learn more about this very interesting to FPGA devices' users game preservation project watch the interview with Smokemonster by RetroRGB (go to 18:41):
 

 
I wonder whether it will be adapted for computer FPGA cores (MiST, for instance) as well...

48 minutes? Summary plz...

#131 retro_fan OFFLINE  

retro_fan

    Chopper Commander

  • 135 posts

Posted Mon Dec 25, 2017 2:23 PM

48 minutes? Summary plz...

 

I gave you the timestamp, and I thought it would be best to here it from Smokemonster himself. :P But yeah Wolf_ explained it quite well: "Basically instead of distributing roms Smoke is switching to a 100% legal program that simply renames and organizes roms how he would set them up. It does this by recognizing hashes (think little built in id numbers every file has) so as long as the id says the contents of the file match what he is looking for it will make sure the file gets named and moved properly regardless of what name it has, and even if it has the same name as something in his packs if the hash (once again think id number) doesn't match it won't move that file incorrectly, which makes it obvious if you have the wrong file.

For the vast majority of a pack just downloading the "goodroms" or "no intro" version would set things up as you would want but the issue is that (imo and probably many others as well) one of the most amazing appeals of the packs is that it includes a very detailed database of pre-patched, pre-translated, hacked, and homebrew games (as well as tools like the 240p test suite and the everdrive/analogue system files) which would require anyone wanting to build the list from scratch to track down and do all of that themselves. Luckily however this means that his lists will never be taken down and vanish from the internet, or that he would get in potentially life ruining trouble for just being a genuinely awesome guy and as long as the lists are around if any single fan of them feels up to it they can make the complete packs available to everyone and if anyone gets a take down notice they can just pass the baton.

Right now for example someone has already uploaded them on an archiving site which I won't name in this thread (but has been named in Smoke's thread on epforums).

tl;dr: I really hope everyone can see how amazing it is that the Smokemonster packs are now preserved forever in a completely legal way and if anyone wants to download them the only thing that has ultimately changed is where they are located. Please don't be distasteful and insist that the man that has given literal hundreds of hours to researching and archiving these lists should host them himself and put himself at risk when he has already done so much for everyone."



#132 Newsdee OFFLINE  

Newsdee

    Stargunner

  • Topic Starter
  • 1,237 posts

Posted Tue Dec 26, 2017 8:35 AM

Yes I think it's great, and the folder organization they do is pretty good. These rom packs also work as with FPGAs as-is for the most part.

Edited by Newsdee, Tue Dec 26, 2017 8:35 AM.


#133 retro_fan OFFLINE  

retro_fan

    Chopper Commander

  • 135 posts

Posted Mon Jan 15, 2018 4:18 PM

 

"Dissecting FPGAs from bottom up, extracting schematics and documenting bitstream formats

 

In this talk I describe the basic makeup of FPGAs and how I reverse engineered the Xilinx 7 Series and Lattice iCE40 Series together with the implications.  FPGAs are used in many applications ranging from networking, wireless communications to high performance computing, ASIC prototyping and so forth.  They would be perfect to create true open source hardware but we would still be bound to use proprietary toolchains provided by the manufacturers.  To generate a valid configuration file this toolchain needs to know every single wire, switch, possible connection, logic block and the corresponding bits to configure each them.  In other words you are required to have the blueprints of the FPGA in your toolchain to be able to do the place&routing and generation of the bitstream file from your netlist.  Naturally manufacturers do not like to disclose this information, possibly because someone could reverse engineer valuable intellectual property cores.  I will explain each component used in FPGAs from Lattice and Xilinx, like switchboxes, the interconnect, logic blocks, memory blocks.  Furthermore I will talk about how I reverse engineered the 7 Series from Xilinx and the iCE40 from Lattice.  At the end I will demonstrate how to create your own bitstream by hand, implementing a small logic circuit and testing it live on a Zynq 7000 FPGA from Xilinx."



#134 Sbeehive OFFLINE  

Sbeehive

    Space Invader

  • 38 posts

Posted Mon Feb 19, 2018 8:47 AM

For anyone with a MISTer and the relevant upgrade modules....

 

How does the 486 core run? I've seen a few videos of proof of concepts here and there.

 

 



#135 Newsdee OFFLINE  

Newsdee

    Stargunner

  • Topic Starter
  • 1,237 posts

Posted Sat Feb 24, 2018 8:37 AM

It runa very well. It has Sound Blaster support and runs many DOS games. It should run most of what a 486 sx could run.

Monkey Island 2:


Trackers (MOD music)


Laura Bow 2:


Wolf3D:

Edited by Newsdee, Sat Feb 24, 2018 8:39 AM.


#136 Sbeehive OFFLINE  

Sbeehive

    Space Invader

  • 38 posts

Posted Sun Feb 25, 2018 9:25 AM

Thanks Newsdee,

 

That looks awesome. Sorry to keep hammering out questions but I have a couple!

 

Can this potentially run like a Roland MT-32 or SC-55 in any way shape or form (I have the original units).

 

How do you install games? Does it function like a real 486 once you enter the core?

 

Do you know if GOG.com games would work on this puppy?

 

It is looking like I need to figure out where and how to buy the components to this thing... but I have no idea where to start.

 

Thanks!



#137 Newsdee OFFLINE  

Newsdee

    Stargunner

  • Topic Starter
  • 1,237 posts

Posted Sun Feb 25, 2018 10:15 AM

I love these FPGA machines (I have various types) so happy to answer any questions.

I'm not sure what you mean by running like a MT-32? If you mean support for the soundcard, its possible technically, but on these things I always recommend just looking at what exists now. Since there is no guarantee when a developer might add it.

The core works like a real 486. It takes a VHD file for a hard drive and IMG files for floppies. You can open the VHD on Windows (or Linux) and just copy files to it.

I haven't tried it myself but if GOG titles work on Dosbox they should work here. I assume they have no DRM, so you can just copy them inside the hard drive image.

The main board can be bought directly from the manufacturer or on a website like Mouser:
http://www.terasic.c...yNo=167&No=1046

Then you need at least an SDRAM board which you can find here:
https://www.cbmstuff...ducts.php?cat=3

You don't need the I/O board or the RTC board to start. In fact the 486 core will even run without the SDRAM board, but I do tecommend getting it for the other cores. The Genesis core also runs without SDRAM expansion.

Edited by Newsdee, Sun Feb 25, 2018 10:16 AM.


#138 Keatah OFFLINE  

Keatah

    Missile Commander

  • 21,436 posts

Posted Sun Feb 25, 2018 2:27 PM

How much better is the MiSTer compared against the original MiST? It's a broad question, but it seems like this is an off-the-shelf replacement?


Edited by Keatah, Sun Feb 25, 2018 2:54 PM.


#139 Newsdee OFFLINE  

Newsdee

    Stargunner

  • Topic Starter
  • 1,237 posts

Posted Sun Feb 25, 2018 5:41 PM

How much better is the MiSTer compared against the original MiST? It's a broad question, but it seems like this is an off-the-shelf replacement?

Some things are similar because MiSTer is a successor/descendant of the MiST project. But which one is better is a bit subjective.

Technically the MiSTer has a much bigger and better FPGA, a 110K LE Cyclone V with extra 800 Mhz ARM MCU on chip, versus the 25K LE Cyclone III of the MiST with a tiny MCU on the PCB.

MiSTer has HDMI out, an Ethernet port, and supports many more USB devices. ARM MCU runs a barebones Linux for all housekeeping such as loading files from SD card or act as FTP server.

The MiST on the other hand has two DB9 joystick ports than can receive Amiga style 2 button controllers, and MIDI ports which can also be disabled to act as serial port for connection to a real modem, allowing the ST and Amiga cores to use the internet for instance.

In theory MiSTer could run all of the MiST cores and has already cores that the MiST cannot handle because it has no space (486 and Genesis). That said not all cores were ported yet and there is no timeline when that will happen. Being fully open source means that developers work on it when they are willing. Not unlike SE in the very early days.

Another key difference is a MiST can be more easily assembled as the Cyclone III can be hand soldered, whereas the Cyclone V needs industrial equipment. This led to various clones popping up, and eventually Lotharek to decide stop production of the official MiST for now. In any case that means the PCB for MiST can eventually be produced by anybody. With the code being open source, that means anybody can pick up the torch if the original devs leave.

MiSTer on the other hand is built around an industrial FPGA education board which have become fairly cheap (not the case when MIST was created). This means there is a risk the company stops producing it, but two things makes this irrelevant (IMHO). First, current production volumes are fairly big as the market is broader for these cards (its not just for retro computing but used for university FPGA education), and second there are similar boards where the MiSTer code can be ported to. One person is looking at making it run on a VGA only board which is slightly cheaper, for example.

Looking at clone cards there are models of MiST with SVideo and Composite video out, such as the MISTICA, which can be appealing for those wanting to game on CRTs

So if you like the idea of 100% open hardware or want an ST core right now, or maybe want SVideo/composite, the MiST or a clone might be more appealing, Otherwise the MiSTer would be the state of the art (HDMI) with more expansion potential. Its also cheaper if you go for just the SDRAM expansion.

Also just to be clear the cores are practically the same between the two, there is no difference in compatibility (basically they are largely the same Verilog/VHDL code). Only exception is some cores run better on MiSTer (e.g. PC Engine) as the bigger FPGA allows them to be more stable. Game support is the same though.

Edited by Newsdee, Sun Feb 25, 2018 6:01 PM.


#140 Sbeehive OFFLINE  

Sbeehive

    Space Invader

  • 38 posts

Posted Mon Feb 26, 2018 8:10 AM

Newsdee do you mind if I PM you about how to get started with this MISTer thing?

 

I have some questions on setup and what I would need but don't want to clog this thread.

 

One random question that everyone might want to know:

 

So there are these MIDI sound-modules that were popular around the DOS era. They work in Dosbox via a MIDI USB connection. In Dos you needed some kind of UART Card to get them working. I'm wondering if there would be a way to get the MISTer to read the MT-32/SC-55 and function as the old hardware did. Don't know if anyone has done this yet but it does interest me.



#141 Newsdee OFFLINE  

Newsdee

    Stargunner

  • Topic Starter
  • 1,237 posts

Posted Mon Feb 26, 2018 6:10 PM

Yes sure, feel free to PM me. There are also forums for the MiSTer where you can find tons of info:
http://www.atari-for...forum.php?f=117

There is no external midi support for the 486 core at the moment. It is technically possible but it will need a motivated developer to look at it.

Note that many of the MiST and MiSTer cores are ports of work done by independent people in open source projects. If the original project gets upgraded, it is pretty straightforward to upgrade the MiSTer core as well.

If you want an idea on how it works, you can perhaps check how the Mockingboard sound card is handled for the Apple II core:
https://github.com/M..._MiSTer?files=1

Edited by Newsdee, Mon Feb 26, 2018 6:17 PM.






Also tagged with one or more of these keywords: FPGA, emulation, vhdl, verilog

0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users