Perfecting existing cores

https://github.com/mist-devel/mist-board/wiki

Moderators: Mug UK, Zorro 2, Greenious, spiny, Moderator Team

User avatar
Newsdee
Atari Super Hero
Atari Super Hero
Posts: 930
Joined: Fri Sep 19, 2014 8:40 am

Perfecting existing cores

Postby Newsdee » Wed Mar 22, 2017 12:16 pm

(splitting from the Jupiter ACE thread)

jotego wrote:Certainly, taking into account coders' motivation is important but I think the motivation is not only fun, there is also a social aspect. When we, coders, see people enjoying our work and giving us appreciation back, it feels great. So recognition is a factor too. Another one is collaboration in the scene. At the beginning is fun to do some small coding alone but working with others, especially with other people who has a name in the scene feels great. Finally, having clear goals help developers too. It is not the same to work towards one satisfaction that to try to meet some community set standard of quality.

So I think that having specifications for the cores, and having them listed publicly will help MiST overall. Of course, from the user perspective it helps too. I think the list from Newsdee is a good starting place. It needs more visibility. Maybe a link from the Github site of MiST? People who are not coders could make the quality team. A section on the wiki page of the Github site could be a good hosting location.

Coders who are not actively writing new cores, can spend some time reviewing cores from a hardware design perspective to identify issues. We need the cores to be as clean and compliant to high quality HDL as possible because otherwise, either they fail to operate reliably or development stops because issues become intractable.

As part of the recognition process to motivate coders follow this quality standard, we could have a prize in Summer and another in Winter for the best cores. We give this event some publicity in social media. This will attract both new developers too and new users. This will also show the importance of the people working on the quality team as they become judges of the work.

Well, I am just throwing ideas out because I want to keep working as a developer and not as quality but I hope some people will take the lead here. We really need people looking at these things. It's like a business, we need a quality department and some managers to organize the team. Maybe we also need marketing... a Twitter/Facebook account. Indeed, there is a lot of potential here. I think this project is still on an early stage.


The spreadsheet is linked from the wiki core status page:
https://github.com/mist-devel/mist-boar ... CoreStatus

I think we should take it step by step, maybe even core by core. There's more than 40 cores for the board but not many are "done" by any means. I could suggest starting with consoles, because the variations in features are less complex than computers?

But we won't get anywhere without willing developers. ;) I can offer you to look at the NES to start with, comparing the core with commercial (closed source) FPGA implementations and fill the gaps. You need to tell me what would help you, though.

I've tested over 700 NES games to document the gaps in detail:
https://docs.google.com/spreadsheets/d/ ... p=drivesdk

There's other worthy cores... but its a bit sad that the MiST is being eclipsed by commercial FPGA consoles due to lack of compatibility.

As it happens I have a real Famicom and a real PC Engine (both with and without CD). I also have an oscilloscope although I'm not very good with it. Not sure if that's helpful.

As for getting the word out, I started threads on AtariAge where I post when something interesting comes out:
http://atariage.com/forums/topic/248340-the-mist-fpga/

And more generically a thread on FPGA gaming thats getting very interesting links posted by a few people:
http://atariage.com/forums/topic/262816 ... e-f-p-g-a/

User avatar
jotego
Atari maniac
Atari maniac
Posts: 84
Joined: Wed May 04, 2016 10:02 am
Location: Valencia (Spain)

Re: Perfecting existing cores

Postby jotego » Sun Mar 26, 2017 10:36 am

I think that the documentation work you have done on the NES core is very relevant. I am not ready to help with it just yet. I have to learn more about how to make cores in general. Until now I have only focused on a specific module (sound modules) and I have tried to stay away from the general core as much as I could.

I have started to study how cores for MiST are done now. Not everything is as documented as I would like so it will take a while. When I am ready I will help polish the existing cores.

I am getting a ZX-UNO next weekend directly from the developers. I want to compare the two systems too in terms of core development. Hopefully we will be able to share code for 8-bit cores.

User avatar
Newsdee
Atari Super Hero
Atari Super Hero
Posts: 930
Joined: Fri Sep 19, 2014 8:40 am

Re: Perfecting existing cores

Postby Newsdee » Sun Mar 26, 2017 2:34 pm

Sounds good. I also have a Zx-Uno but I must admit I've been using it less than the MiST. As far as I can tell both cores are written differently (due to Altera vs. Xilinx IP/macros) but perhaps a common standard can be made.

braincell1973
Atari freak
Atari freak
Posts: 53
Joined: Mon Jul 25, 2011 10:32 am

Re: Perfecting existing cores

Postby braincell1973 » Mon Mar 27, 2017 12:12 pm

As a beginner with learning to program FPGA's it is clear there is a lack of documentation regarding the MIST.

BUT, On the other side of the coin its also clear there are a lack of developers too, Software emulation is far more mature and widespread , Even with so many more active people documentation often becomes a poor second to the code.

Just my 2 pence worth ..........


Lee

User avatar
Higgy
Atari freak
Atari freak
Posts: 62
Joined: Tue Jan 24, 2017 1:38 pm

Re: Perfecting existing cores

Postby Higgy » Thu Mar 30, 2017 11:33 am

Sorry for the delay in replying. I am glad that there is movement to start looking at Cores.

My concerns were slightly different, but still relevant with what you have said:

I would like all released Cores to be able to work across all MiST PCB/SDRAM versions. And to identify why there is this issue and have a design guide so all programmers can be sure that their hard work can be enjoyed by everyone who owns a MiST.

I see you have been testing a lot of NES games! I wonder if this is really achievable across all Cores? If you look at quantity of titles released for systems and the time to load and play test a game it is going to take even a lot of people a lot of time.

How about 10-20 games+demos+homebrew titles are initially selected to be tested. This can be known demanding games, ones that emulation have difficulty in running.

It will be easier to split up the work and we will progress through Cores quicker and feel like progress is being made.

A sub-project within that Core could be to look at better implementation for specific games. The BBC Micro Core fixes worked well. When issues were found, a number of sources helped to solve the issue.

Also between forum members we have access to pretty much all of the original hardware. So we can test troublesome games/demos on actual hardware.

Other forums can be a source for help, like Stardot.org for Acorn/BBC hardware and the ZX-Uno forum. cpcwiki.eu the Amstrad forum were running a project to decap the CPC's microchips in order to see how they functioned. This could be a useful source of information (I have already passed this info onto the ZX-Uno CPC Core developer).

Thanks

User avatar
Newsdee
Atari Super Hero
Atari Super Hero
Posts: 930
Joined: Fri Sep 19, 2014 8:40 am

Re: Perfecting existing cores

Postby Newsdee » Fri Mar 31, 2017 8:19 am

The thing of the NES is that games correspond to specific mappers so you can check how many extra games would be supported by implementing a mapper. On a computer core this would be more difficult.

That said at least the Gameboy and PC Engine core have missing mappers too, each covering a few games.

User avatar
vebxenon
Captain Atari
Captain Atari
Posts: 460
Joined: Fri Apr 24, 2015 12:10 pm

Re: Perfecting existing cores

Postby vebxenon » Fri Mar 31, 2017 8:40 am

Newsdee wrote:That said at least the Gameboy and PC Engine core have missing mappers too, each covering a few games.


For example, Blazing Lazers gets unplayable and corrupted once you finish the first half of first stage and Street Fighter II' Champion Edition has similar issues.

User avatar
Newsdee
Atari Super Hero
Atari Super Hero
Posts: 930
Joined: Fri Sep 19, 2014 8:40 am

Re: Perfecting existing cores

Postby Newsdee » Sat Apr 01, 2017 1:35 am

vebxenon wrote:For example, Blazing Lazers gets unplayable and corrupted once you finish the first half of first stage and Street Fighter II' Champion Edition has similar issues.
SFII actually is the biggest ROM on PCE HuCards and has a one-off a custom mapper. Would be nice to fix it (given the game) but it also needs support for a second gamepad and (ideally) 6-button controllers; so it's quite a lot of work for just one game.

Still it's a very good port, here's a comparison between Genesis and SNES versions:
http://www.retro-sanctuary.com/comparis ... ghter.html

User avatar
vebxenon
Captain Atari
Captain Atari
Posts: 460
Joined: Fri Apr 24, 2015 12:10 pm

Re: Perfecting existing cores

Postby vebxenon » Sat Apr 01, 2017 5:12 pm

Newsdee wrote:
vebxenon wrote:For example, Blazing Lazers gets unplayable and corrupted once you finish the first half of first stage and Street Fighter II' Champion Edition has similar issues.
SFII actually is the biggest ROM on PCE HuCards and has a one-off a custom mapper. Would be nice to fix it (given the game) but it also needs support for a second gamepad and (ideally) 6-button controllers; so it's quite a lot of work for just one game.

Still it's a very good port, here's a comparison between Genesis and SNES versions:
http://www.retro-sanctuary.com/comparis ... ghter.html


I have the original carts-cards of these versions :D . It's for me more important to fix Blazing Lazers (one of my favorite games).

Regards,

Salva

User avatar
jotego
Atari maniac
Atari maniac
Posts: 84
Joined: Wed May 04, 2016 10:02 am
Location: Valencia (Spain)

Re: Perfecting existing cores

Postby jotego » Tue Apr 04, 2017 1:46 pm

Higgy wrote:How about 10-20 games+demos+homebrew titles are initially selected to be tested. This can be known demanding games, ones that emulation have difficulty in running.

It will be easier to split up the work and we will progress through Cores quicker and feel like progress is being made.


Yes, deep testing with a few titles will help a lot.

User avatar
Higgy
Atari freak
Atari freak
Posts: 62
Joined: Tue Jan 24, 2017 1:38 pm

Re: Perfecting existing cores

Postby Higgy » Wed Apr 05, 2017 6:22 pm

Let us keep this topic the talking area, rather than other topics so we all know where to look/go for discussions.

Regarding the Archimedes Core as I understand the Core developer Steven Leary does not even have a MiST, he used a Papilio Pro board.

Ok we need to get the ball rolling and pick a Core to start looking at. We have talked about looking at Console Cores first. I don't mind, I just think we need to pick a Core where we have someone that can actually make a change.

My personal preference is getting Cores to work on all MiST's rather than getting all software to run, but I am easy on what people want to do. My preference would be a computer Core, either; Sam Coupe, Archimedes or MSX. Sam Coupe and Archimedes just use standard FAT/FAT32 and only require 1 additional ROM file to 'work'.

Once a Core has been decided, to reduce variabilities we want people to have a dedicated SDcard for the testing, in the same format FAT/FAT32. Everyone using the same additional files (ROM, BIOS etc), and everyone using the same 'test' files (10-20). A mix of games and demos.

hubersn
Atariator
Atariator
Posts: 22
Joined: Fri Sep 11, 2015 8:10 pm

Re: Perfecting existing cores

Postby hubersn » Wed Apr 05, 2017 7:12 pm

Stephen definitely has a MIST (donated by Till) - it broke a few months ago, but as I understand it has been fixed and is now working again. But maybe it would help to sponsor a new MIST to get the core working on the later hardware?

User avatar
Higgy
Atari freak
Atari freak
Posts: 62
Joined: Tue Jan 24, 2017 1:38 pm

Re: Perfecting existing cores

Postby Higgy » Wed Apr 05, 2017 7:49 pm

Hi. What do you mean by later hardware?

It does not work on my v1.2 PCB or a temporarily owned v1.3 when I had it.

I think the issue is a variation on the SDRAM or even the FPGA chip.
This is why we need detailed testing. People that can get it to work need to post details: PCB revision, SDcard details/setup, which RISC OS file (and link to it) they are using and SDRAM chip details/part number.

The latest Sam Coupe Core does not work on my v1.2 but does on Sorgelig's 2x v1.3's. What is the difference!!!!
If it is timing variations, this is where a design guide will help everyone. There was recent discussions on clock timing design within Cores.


Return to “MiST”

Who is online

Users browsing this forum: No registered users and 0 guests