X68000 core

https://github.com/MiSTer-devel/Main_MiSTer/wiki

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

onaryc29
Atari freak
Atari freak
Posts: 61
Joined: Mon Dec 10, 2018 9:47 am

Re: X68000 core

Post by onaryc29 »

This is a very good news (and there are lot of them lately mister wise :) )
Sorgelig
Ultimate Atarian
Ultimate Atarian
Posts: 6348
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: X68000 core

Post by Sorgelig »

puu wrote:Hello, I'm original(DE0-CV) version designer.please teach me how to generate(build) MiSTer .rbf file with Quartus.
i've updated the framework and made compatible with SDRAM v2 and all latest MiSTer HW.
Now you can use free Quartus version to compile.
dshadoff
Atari maniac
Atari maniac
Posts: 97
Joined: Sun Dec 29, 2019 9:07 pm

Re: X68000 core

Post by dshadoff »

puu wrote:Hello, I'm original(DE0-CV) version designer.please teach me how to generate(build) MiSTer .rbf file with Quartus.
初めまして。
X68000は興味深いパソコンですけど、日本の外でみんなだいたい知りません。
Pleased to meet you.
The X68000 is a very interesting machine, but people here don't know much about it.

「.rbfファイル」ということで、まずは、共通フレームワークのソースコードのノート:
共通フレームワークは、Sorgeligが責任者です。FPGA側では、「/sys/*」でのファイルですがそしてARMとの通信や映像のスケーリングの機能を提供します。ARMの機能も含んでいます。
First, a note about the MiSTer source code:
The common framework is supported by Sorgelig. On the FPGA side, these are the files in /sys/, and they provide functions such as video scaling and communication with the ARM side. The framework also includes the ARM code.

SorgeligはX68000_MiSTerのGitHubでは、そのフレームワークを修正したばかりです。今puuさんがコンパイルするために準備ができました。
Sorgelig has just updated the framework for X68000_MiSTer, and it is ready for you to build.

「Quartus Lite」(無料バージョン)が大丈夫ですけど、17.0.2のバージョンを使ってください。
Quartus Lite is OK, but please use version 17.0.2 .

フエームワークとか何か質問があったら、ここでどうぞ日本語でも聞いてください。私たちは助けるように努めます。
If you have any questions about the framework, please feel free to ask here (even in Japanese); we will do our best to help you.

Dave
puu
Retro freak
Retro freak
Posts: 13
Joined: Mon Apr 20, 2020 12:30 am

Re: X68000 core

Post by puu »

ではお言葉に甘えて、日本語で書かせて頂きます。

最新版をダウンロードし、Quartus18.1でコンパイル出来ております。
SDRAMボードは注文したばかりでまだ手元にありませんので、JTAG書き込みは出来ましたが当然、動作は確認できておりません。
Convert Programming Filesから.rbfファイルへの変換も出来ました。

ところで、FPGA側はJTAG書き込みで動作すると思うのですが、ARM側のプログラムはどうすれば良いのでしょうか。
MiSTerのUIは動作しておりますが、FPGAにrbfファイルを書き込む以外にBIOSイメージをFPGAコアに渡したり、
他のコアではFDイメージやVHDイメージをFPGAに受け渡す処理をしていると思いますが、その部分のプログラムは
どのようにしてロードすれば良いですか?その部分は既にMiSTer コア側で持っており、その部分に任せているのでしょうか。
僕のX68kコアでは、FDCそのものを実装しているのでセクタヘッダを含む(BADセクタも含む)情報が必要になります。
伝統的に、日本のPCのFDは2048 byte/sectorですのでその部分の処理も必要なのかもしれません。
Sorgelig
Ultimate Atarian
Ultimate Atarian
Posts: 6348
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: X68000 core

Post by Sorgelig »

1) Please use Quartus 17.0.x version.
2) X68000 currently needs secondary SD card, so you need I/O board which provides the slot for secondary SD card. VHD could be added, but NIOS firmware must be changed to provide sd_* interface from hps_io. The core version of x68000 i've ported didn't have the sources for emulator firmware. Mush later you've released the sources, but i think it's for updated core, so it requires to update HDL to latest version.
I think it's better to move some NIOS emulation part to ARM, then we won't need virtual SD card, but will use custom support and will be able to browse the HDD/FDD/SRAM files directly from primary SD card file system. Much like it's done for Minimig.
bitfan2011
Obsessive compulsive Atari behavior
Obsessive compulsive Atari behavior
Posts: 112
Joined: Sat Dec 29, 2018 5:46 pm

Re: X68000 core

Post by bitfan2011 »

hopefully you already know about this website:

https://nfggames.com/X68000/

schematics: https://nfggames.com/X68000/index.php/Schematics/

if the mister X68000 core could support their v4 HDD image, it would be amazing
release notes: https://nfggames.com/forum2/index.php?topic=5323.0

thanks
Peredonov
Obsessive compulsive Atari behavior
Obsessive compulsive Atari behavior
Posts: 120
Joined: Sat Jan 04, 2020 8:06 pm

Re: X68000 core

Post by Peredonov »

Google Translateでほぼ通じているみたいですけど、英語のメッセージに何か不明確なことがあったら教えて下さい、私達は喜んで明らかにするように力になります。
このX68000コアを徐々に完全させよう!

Looks like Google Translate can do well enough here, but if there's any part of puu's posts that's not clear after translation, I can also back up dshadoff in helping to clarify.
Let's get this core to completion step by step!
dshadoff
Atari maniac
Atari maniac
Posts: 97
Joined: Sun Dec 29, 2019 9:07 pm

Re: X68000 core

Post by dshadoff »

フレームワークはQuartus 17.0.x版で書かれました。Quartus 18.x版から、便利な新機能含ませずに、何か非互換性が含見ました。
フレームワークを更新することはかなり手間がかかるので、利点のないうちにSoregligさんが書き直さないと決しました。
The framework was written for Quartus 17.0.x. In Quartus 18.x, there was some incompatibility introduced, but no new useful features. Since it requires a lot of effort to change the code for each new version, Sorgelig decided that this can wait until there is a good reason to upgrade.

。。。というわけで、Quartus 17.0.x版を使ってください。
...So please use version 17.0.x


今X68000_MiSTerは2番目のSDCardでファイルにアクセスしています(I/O基板付)。(NIOSで選択するらしいでしょう?)
Currently, X68000_MiSTer uses the second SD Card (on the I/O Board) for access to files. (It seems to use NIOS to choose, does it ?)


まずは、I/O基板が持っていますか? https://github.com/MiSTer-devel/Main_Mi ... mbly-(DIY)
今のバージョンは6.1、そしてAltiumデザインファイルはこちら:https://github.com/MiSTer-devel/Hardwar ... ns/IOBoard
ガーバーファイルと回路図のPDFはこちら;https://github.com/MiSTer-devel/Hardwar ... rd_6.1.zip

組み立つのが簡単だと思いますが、部品をたくさん集めらないといけない(完全な基板の場合)。。。一方、X68000に使用するために、基本的にSDCardとLEDとスイッチだけで大丈夫でしょう。
ところで、MiSTerのコミュニティが応援したくて助けるために、誰かが基板をpuuさんに送って上げることもできます。(もしよかったら)

First, do you have an I/O Board ? https://github.com/MiSTer-devel/Main_Mi ... mbly-(DIY)
The current version is 6.1, and Altium files are here: https://github.com/MiSTer-devel/Hardwar ... ns/IOBoard
Gerbers and schematic PDF are here: https://github.com/MiSTer-devel/Hardwar ... rd_6.1.zip

Assembling it easy, but you need to gather a lot of parts for a complete board. However for X68000, you would need
By the way, the MiSTer community wants to help you, so somebody can send you a board if that helps. (If it's alright with you)


SorgeligさんはX68000のコアを更新するために、puuさんを助けたいんです。そう言いました:続行するいい方法が、puuさんはVHDLファイルを今のバージャンに更新して、SorgeligさんはNIOSの機能を共通フレームワークに変えることを助けます。
Sorgelig would like to help you to update this core. He told me that the best way would be for you to update the VHDL files to your current version, and then he can help you to move some NIOS functionality to use the MiSTer framework instead.


SDCardをアクセスする場合、MinimigかMSXのコアを見てください。でもao486は多分良い例ではありません。
For SDCard access, you can look at MiniMig or MSX cores. Perhaps ao486 is not the best example to start with.

Dave
zerohimself
Retro freak
Retro freak
Posts: 16
Joined: Wed Dec 12, 2018 10:09 pm

Re: X68000 core

Post by zerohimself »

puu wrote:Hello, I'm original(DE0-CV) version designer.please teach me how to generate(build) MiSTer .rbf file with Quartus.
If you need any of the addon boards, send me a message. I would be happy to send you anything you need to test with.
friendlyjoe
Atarian
Atarian
Posts: 3
Joined: Tue Aug 20, 2019 4:10 pm

Re: X68000 core

Post by friendlyjoe »

Puu様、
お目にかかれまして嬉しく存じます。
MiSTer FPGAをこよなく愛する日本人で、Poo様のサイトもよく読ませていただいておりました。

FPGAなどの開発は全くできませんが、日英の橋渡しなど、お困りの事がございましたら、仰ってください。

MiSter FPGA は、非常に情熱的なメンバー多数により開発が進められています。ご感心をお持ちいただきありがとうございます。

Dear Mr. Puu

I am really pleased to meet you here; I'm a maniac who loves MiSter FPGA, and I am a keen reader of your blog posts.

I am in no way able to develop/understand any FPGA etc; however if you need any language support etc I am more than happy to assist you.

MiSTer FPGA is supported/developed by many enthusiastic developers. Thank you very much for your interest to this platform.
reminon
Atarian
Atarian
Posts: 1
Joined: Mon Mar 09, 2020 2:11 pm

Re: X68000 core

Post by reminon »

To be honest, he doesn't necessarily need the io board just for the 2nd sd. I used this breakout board and it functioned fine, and is only $10. https://www.icbreakout.com/products/mic ... kout-board
puu
Retro freak
Retro freak
Posts: 13
Joined: Mon Apr 20, 2020 12:30 am

Re: X68000 core

Post by puu »

僕もSDカードだけの為にIO boardは要らないと思っています。僕のRTLではSPIモードでアクセスしていますので、SPIの4本、VCC,GNDと挿入検出の7本結線するだけなので、DIP変換基板だけで十分、実は別件で購入済みなのでそれでやろうと思っています。
恐らく僕は自作(感光基板)のFDD I/F,ATARI game portの付いた基板
https://fpga8801.up.seesaa.net/image/X68k_PCB.jpg
のディスプレイ手前の小さな基板の方ですが、これを最終的には繋げて、本物のFDDを繋げるでしょう。
dshadoff
Atari maniac
Atari maniac
Posts: 97
Joined: Sun Dec 29, 2019 9:07 pm

Re: X68000 core

Post by dshadoff »

さすがpuuさん、自作の基板を作るはずです、ね。
I knew you could make your own board. :)

FDD I/Fは、研究のためにすごいですけど、MiSTerプロジェクトの一般ユーザーにはあまり役に立たないでしょう。
ところで、MiSTerのフレームワークではUSB joypadをなんでも使うことが分かりますか?(。。。とか、キーボードとか、マウスなど。。。)
I think a floppy controller board would be great for research, but maybe not so useful for most users of MiSTer.
By the way, did you know that MiSTer's framework supports all USB joypad/joysticks ? (...and keyboards, and mice, etc...)
puu
Retro freak
Retro freak
Posts: 13
Joined: Mon Apr 20, 2020 12:30 am

Re: X68000 core

Post by puu »

僕のX68kコアはそもそも実FDをプロテクトが掛かったまま使用できる事を目標にしています。
ディスクエミュレーションは、最近フロッピーのメディア自体が入手困難になっている為の代替策です。実FDDで動作させることが本来の姿です。
puu
Retro freak
Retro freak
Posts: 13
Joined: Mon Apr 20, 2020 12:30 am

Re: X68000 core

Post by puu »

USB FDDがセクタ単位で(セクタサイズを自由に選べて)使用できるのであれば是非とも使ってみたいです。
mrbig6251
Atariator
Atariator
Posts: 18
Joined: Wed Feb 26, 2020 11:46 pm

Re: X68000 core

Post by mrbig6251 »

I think it's a good idea for preservation but for many users it will be more easier to use FDD emulator on sd/hdd, but it's really if it becomes real for the X68000 core, congratulations

Mr BIG
puu
Retro freak
Retro freak
Posts: 13
Joined: Mon Apr 20, 2020 12:30 am

Re: X68000 core

Post by puu »

まだSDRAM boardは入手出来ていませんが、Quartus17.0.2で合成し、SignalTapIIで動作確認を行っています。
MiSTerのUI起動中(コア選択画面)にjtagでFPGAに書き込みを行っていますが、SDRAMコントローラ等、動作開始していないようで、
rstnが0から1にならないのですが、元をたどるとemu|hps_io|ioctl_downloadが0のまま変化していないようです。
名前から判断すると、BIOSイメージのダウンロードの関係ではないかと思いますが、SDカードからBIOSイメージをARMがロードし、
FPGAコアに渡すのだろうと思いますが、そのARMに対してBIOSイメージを要求するのはどのタイミングでしょうか。
また、ARMコアにどこのディレクトリのどのファイルを送るように、というのはどこで指示するのでしょうか。
起動シーケンスが今一、理解できていないので教えてください。
dshadoff
Atari maniac
Atari maniac
Posts: 97
Joined: Sun Dec 29, 2019 9:07 pm

Re: X68000 core

Post by dshadoff »

特別な記録フォーマットが分かりますけど、ディスクは結局滅びますね。フラックス記録が知っていますか?「KryoFlux」のような道具がそういう特別な記録フォーマットを保存できて、オリジナルフロッピーはいりません。
http://cwaweb.bai.ne.jp/~ohishi/zakki/kryoflux.htm
I understand about accessing special floppy formats, but old media will decay. Do you know about flux recording ? Tools like KryoFlux can preserve special encoding, so that original disks aren't needed.

とりあずこれを置いておきましょう。。。
But let's put that aside for the moment...

そもそも、コアがスレーブプロセッサです。
From the beginning, the FPGA core is a slave to the ARM side.

これはJTAG用の起動プロセスの説明です:
1. SOF ファイルをJTAGでFPGAにダウンロードされます。
2. ARM側が再起動します。
3. ARM側がX68000.svのCONF_STRの中にコア名を訊きます。そして、status[0]を"0"から"1"まで変えります。これから、コアが動かない(resetの状態になります)。
4. ARM側が"/games/X68000/boot.rom"を開いて、ioctl_*信号でダウンロードします。
5. ARM側がやとstatus[0]を"1"から"0"まで帰ります。それから、FPGAのコアが動けます。

こちらは補足事項(英語):
https://github.com/MiSTer-devel/Main_Mi ... debugging)


Here is a description of the startup process, when using JTAG:
1. download JTAG into FPGA (SOF)
2. ARM side reboots
3. ARM side will query CONF_STR for the core name (in this case, "X68000"), also status[0] will transition from 0 -> 1, which should put the core into reset state.
4. ARM side will open "/games/X68000/boot.rom" and download it to the core, using ioctl_* signals
5. ARM side will reset status[0] from 1 -> 0, and the core can run

See additional notes here:
https://github.com/MiSTer-devel/Main_Mi ... debugging)


もし私の日本語が通じなければ、すみません。(恥)私の説明が充分かどうか分かりません。
I hope my explanation was OK. I apologize if my Japanese is not good enough.
Last edited by dshadoff on Sat Apr 25, 2020 11:51 pm, edited 1 time in total.
puu
Retro freak
Retro freak
Posts: 13
Joined: Mon Apr 20, 2020 12:30 am

Re: X68000 core

Post by puu »

X68000.sv内の
///////////////// RESET /////////////////////////

reg reset_n = 0;
always @(posedge clk_sys) begin
reg old_download;

old_download <= ioctl_download;
if(~old_download & ioctl_download) reset_n <= 1;
end

で、リセットをioctl_downloadの立ち上がりで解除する回路だと思いますが、reset_nが'0'のままになっており、
ioctl_downloadパルスが来ていないものと思われます。
教えていただいた通り、/games/X68000/boot.romとして
https://github.com/MiSTer-devel/X68000_ ... x68000.rom
をダウンロードしたものを保存しています。

ioctl_downloadパルスを生成する上で、SDRAM boardの有無は関係していますでしょうか。
puu
Retro freak
Retro freak
Posts: 13
Joined: Mon Apr 20, 2020 12:30 am

Re: X68000 core

Post by puu »

/games/X68000/boot.rom
ではなく、
/X68000/boot.rom
ですね。ここに置いたらコピープロセスが表示され、SDRAMコントローラも動作を始めました。
SDRAMボードを接続すれば動作するのではないかと思います。
dshadoff
Atari maniac
Atari maniac
Posts: 97
Joined: Sun Dec 29, 2019 9:07 pm

Re: X68000 core

Post by dshadoff »

そうですか? ごめん。。。でも驚いています。。。
Really ? Sorry about that. But I'm surprised...

何れにしても、USBコンソールを端末に接続すると、デバッグ情報を見たほうがいいと思います。
In any case, you can use the USB to display console output to a terminal, so you can watch the output for some debug information.
mrbig6251
Atariator
Atariator
Posts: 18
Joined: Wed Feb 26, 2020 11:46 pm

Re: X68000 core

Post by mrbig6251 »

mrbig6251 wrote:I think it's a good idea for preservation but for many users it will be more easier to use FDD emulator on sd/hdd, but it's really nice if it becomes real for the X68000 core, congratulations

Mr BIG
Just edited my mistake
Sorgelig
Ultimate Atarian
Ultimate Atarian
Posts: 6348
Joined: Mon Dec 14, 2015 10:51 am
Location: Russia/Taiwan

Re: X68000 core

Post by Sorgelig »

Offtopic posts have been removed. Discuss roumors somewhere outside. This thread is about existing core, so keep it on-topic.
puu
Retro freak
Retro freak
Posts: 13
Joined: Mon Apr 20, 2020 12:30 am

Re: X68000 core

Post by puu »

X68k core porting for MiSTer is completed.
Please check:
http://fpga8801.seesaa.net/archives/20200510-1.html
User avatar
rondc
Atari maniac
Atari maniac
Posts: 94
Joined: Tue Apr 30, 2019 9:59 pm
Location: Spain
Contact:

Re: X68000 core

Post by rondc »

本当にありがとうございました

Sorgelig, could you please check if the core synthesizes?
Locked

Return to “MiSTer”