Next186 MiSTer Core Progress
-
- Core Developer
- Posts: 40
- Joined: Fri Mar 11, 2022 9:46 am
- Has thanked: 14 times
- Been thanked: 104 times
Next186 MiSTer Core Progress
Just thought I would write a short update on the progress of the Next186 MiSTer core.
Conversion to MiSTer is done, and the core is compiling. The video is generating a black screen, so demonstrates that the core is running on the MiSTer.
The bios code includes a bootloader, and is fed into the core via the hps as it should be. Most of the clocks appear in place, but based on the timings from MiST. They might be one of the reasons why theres no output yet.
The next step is really to start debugging the startup of the core, using either Signaltap, or Verilator. The second option requires the vhdl files converted to verilog, but there are some auto translators around to do most of that work.
Its a complex core, so will take a while with debugging to make sure I havent made any stupid mistakes anywhere. Thanks to the help other core devs are offering, things are moving along.
On a positive note: the fpga utilization once compiled is at 33%, so lots of room still to add new features over time.
Conversion to MiSTer is done, and the core is compiling. The video is generating a black screen, so demonstrates that the core is running on the MiSTer.
The bios code includes a bootloader, and is fed into the core via the hps as it should be. Most of the clocks appear in place, but based on the timings from MiST. They might be one of the reasons why theres no output yet.
The next step is really to start debugging the startup of the core, using either Signaltap, or Verilator. The second option requires the vhdl files converted to verilog, but there are some auto translators around to do most of that work.
Its a complex core, so will take a while with debugging to make sure I havent made any stupid mistakes anywhere. Thanks to the help other core devs are offering, things are moving along.
On a positive note: the fpga utilization once compiled is at 33%, so lots of room still to add new features over time.
Buy me a coffee https://Ko-fi.com/jasona
-
- Posts: 314
- Joined: Thu Sep 16, 2021 10:54 pm
- Has thanked: 841 times
- Been thanked: 51 times
-
- Posts: 44
- Joined: Mon May 25, 2020 2:17 am
- Been thanked: 2 times
Re: Next186 MiSTer Core Progress
Really looking forward to this one! Is there any documentation or basic writeup of some of the difference between this and the ao486 core? What sound options will be supported, graphics modes, etc?
Edit: Should have googled of course, found a good listing here of features: https://opencores.org/projects/next186_soc_pc
Edit: Should have googled of course, found a good listing here of features: https://opencores.org/projects/next186_soc_pc
- Newsdee
- Top Contributor
- Posts: 873
- Joined: Mon May 25, 2020 1:07 am
- Has thanked: 104 times
- Been thanked: 239 times
Re: Next186 MiSTer Core Progress
It's a port of the MiST core, there is a list of features in the readme:AntialiasedPixel wrote: ↑Thu Apr 21, 2022 12:01 am Is there any documentation or basic writeup of some of the difference between this and the ao486 core? What sound options will be supported, graphics modes, etc?
https://github.com/mist-devel/mist-bina ... es/next186
- kathleen
- Top Contributor
- Posts: 421
- Joined: Fri Jun 26, 2020 4:23 am
- Location: Belgium
- Has thanked: 243 times
- Been thanked: 138 times
Re: Next186 MiSTer Core Progress
I've tried Next186 with no luck (I'm using the VGA out) is anyone knows if this core works with the VGA output ? Or does it work only with HDMI out ?
Thanks.
Thanks.
かすりん
-
- Core Developer
- Posts: 40
- Joined: Fri Mar 11, 2022 9:46 am
- Has thanked: 14 times
- Been thanked: 104 times
Re: Next186 MiSTer Core Progress
Pretty much everything is wired up ready to go and get the core running.
Working through the debugging daily on this core, as you can see in the image. Bios was loading in the wrong order, so fixed that now.
No new code is needed to be written, its mostly debugging work now.
I will keep you all updated.
Working through the debugging daily on this core, as you can see in the image. Bios was loading in the wrong order, so fixed that now.
No new code is needed to be written, its mostly debugging work now.
I will keep you all updated.
- Attachments
-
- bios reversed.png (21.17 KiB) Viewed 10510 times
Buy me a coffee https://Ko-fi.com/jasona
-
- Top Contributor
- Posts: 1911
- Joined: Wed May 27, 2020 1:59 pm
- Has thanked: 145 times
- Been thanked: 454 times
Re: Next186 MiSTer Core Progress
Thanks. I was just curious as I doubt kathleen was trying to use the MIST core and thus there had to be a MISTer core somewhere.
I am not in a hurry to test it and rather prefer the developers take their time to produce a working one.
Not that I am not be interested in this core for a long time:
viewtopic.php?p=28893#p28893
- spark2k06
- Core Developer
- Posts: 876
- Joined: Sat Jun 06, 2020 9:05 am
- Has thanked: 409 times
- Been thanked: 969 times
Re: Next186 MiSTer Core Progress
One of the methods that can be used for debugging is the use of the MiSTer's 7 built-in LEDs. In this sense, I have modified your code to give access via I/O port 99h to the LEDs, I attached in this post.
The idea is to mark the different steps up to and beyond video initialisation:
However, as far as I have been able to observe, if I have not made any mistakes in the implementation and reading of the port, the BIOS does not even get to step 1, marked right at the beginning:
Therefore, you can start by making sure that the BIOS is indeed correctly initialised and the first instructions are executed. But I repeat, as long as I have not made any mistakes during the implementation of these accesses to I/O port 99h, I have not been able to check much more at the moment.
The idea is to mark the different steps up to and beyond video initialisation:
However, as far as I have been able to observe, if I have not made any mistakes in the implementation and reading of the port, the BIOS does not even get to step 1, marked right at the beginning:
Therefore, you can start by making sure that the BIOS is indeed correctly initialised and the first instructions are executed. But I repeat, as long as I have not made any mistakes during the implementation of these accesses to I/O port 99h, I have not been able to check much more at the moment.
- Attachments
-
- Next186_MiSTer-master.zip
- (927.76 KiB) Downloaded 214 times
- spark2k06
- Core Developer
- Posts: 876
- Joined: Sat Jun 06, 2020 9:05 am
- Has thanked: 409 times
- Been thanked: 969 times
Re: Next186 MiSTer Core Progress
I have fixed a issue in the implementation, and now it is working correctly... I attach it again.
Apparently, it does step 1 but doesn't get to step 2:
This indicates that somewhere in this code, it hangs.
Apparently, it does step 1 but doesn't get to step 2:
This indicates that somewhere in this code, it hangs.
- Attachments
-
- Next186_MiSTer-master.zip
- (927.76 KiB) Downloaded 178 times
- spark2k06
- Core Developer
- Posts: 876
- Joined: Sat Jun 06, 2020 9:05 am
- Has thanked: 409 times
- Been thanked: 969 times
Re: Next186 MiSTer Core Progress
False alarm, it has another bug which I have fixed. I attached it again... and now, yes, I think we can confirm that the BIOS does not run, at least not the first instructions:
- Attachments
-
- Next186_MiSTer-master.zip
- (927.78 KiB) Downloaded 239 times
Re: Next186 MiSTer Core Progress
just out of interest, has the stack pointer been setup before you start doing the PUSH and POP commands ?
-
- Core Developer
- Posts: 40
- Joined: Fri Mar 11, 2022 9:46 am
- Has thanked: 14 times
- Been thanked: 104 times
Re: Next186 MiSTer Core Progress
Sorry, I cant answer that @macro, @spark2k06 probably can.
I am starting to assume that the clock timings are the issue with this core. I can see similarities with these sensitive clocks when attempting to verilate on the PCXT core. Both of these cores have 5 clocks. I had read elsewhere that the cache megafunction in the Next186 is sensitive to change too, and attempting to convert that to a conventional module (without proven video out first) could make matters worse.
Most of the cores we verilate have one or two clocks, and are straightforward.
I have debugged pretty much everything else, and this seems to be the final hurdle.
I am starting to assume that the clock timings are the issue with this core. I can see similarities with these sensitive clocks when attempting to verilate on the PCXT core. Both of these cores have 5 clocks. I had read elsewhere that the cache megafunction in the Next186 is sensitive to change too, and attempting to convert that to a conventional module (without proven video out first) could make matters worse.
Most of the cores we verilate have one or two clocks, and are straightforward.
I have debugged pretty much everything else, and this seems to be the final hurdle.
Buy me a coffee https://Ko-fi.com/jasona
- spark2k06
- Core Developer
- Posts: 876
- Joined: Sat Jun 06, 2020 9:05 am
- Has thanked: 409 times
- Been thanked: 969 times
Re: Next186 MiSTer Core Progress
Yes, the first BIOS instructions are precisely the following:
Code: Select all
cli
cld
mov ax, 30h
mov ss, ax
mov sp, 100h
-
- Posts: 314
- Joined: Thu Sep 16, 2021 10:54 pm
- Has thanked: 841 times
- Been thanked: 51 times
Re: Next186 MiSTer Core Progress
Any news about this promising core? It will reproduce also 286 cpu?