Version : 0.24.12.13 TEST バージョン : 0.24.12.13 TEST
Author : Makoto Kamada 作者 : Makoto Kamada
Website : https://stdkmd.net/xeij/ ウェブサイト : https://stdkmd.net/xeij/
XEiJ (X68000 Emulator in Java) is an experimental X68000 emulator written in the Java language. Although XEiJ is an emulator, the sameness to real machines over the details of peripheral circuits is not necessarily top priority. I enjoy thinking new form of X68000 rather than copying old form. When I hit on an idea of an implementation method or a new function, I begin to write a program first of all even if I can not see its entire structure. If the idea goes nowhere, I put it aside until another idea occurs to me. I repeat such things. As a result, many unfinished parts are seen here and there. But I believe that it is meaningful to release XEiJ to the public if any comment in the source code helps someone. XEiJ (X68000 Emulator in Java) は Java 言語で記述された実験的な X68000 エミュレータです。エミュレータといっても周辺回路の隅々まで実機とまったく同じものを作ろうとしているわけではなく、どちらかと言えば X68000 の新しい形を考えることを楽しんでいます。実装方法のアイデアや新しい機能を思い付いたら全体像など見えなくてもとりあえずプログラムを書き始め、詰まったらまた何か湧いてくるまで脇に置いておく、そんなことを繰り返しているので ソースコード は作りかけのところばかりですが、注釈のどれか 1 つでも誰かの役に立つことがあれば公開する意味があると思っています。
This is a test version. New features may be substantially changed or removed in the future. これはテスト版です。 新しい機能は今後大幅に変更されるか廃止される可能性があります。
You can change the X68000 logo on the IPLROM 1.6 startup screen. Specify the file name of the TEXTPUT format data or the ROM image file name in the parameter x68000logo. The logo height is 16 dots, the standard width is 112 dots, and the upper limit is 208 dots. If the logo width is larger than the standard, the string "SERIES" will not be displayed. IPLROM 1.6 の起動画面の X68000 ロゴを変更できます。TEXTPUT 形式のデータのファイル名または ROM イメージファイル名を、パラメータ x68000logoに指定します。 ロゴの高さは 16 ドット、幅は標準が 112 ドット、上限が 208 ドットです。 ロゴの幅が標準より大きいとき、文字列「SERIES」は表示されません。
You can change the style of the IPLROM 1.6 startup screen. The proportional pitch is 1, centered is 2, with gaps is 4, and the sum of these is specified in the parameter iplrom16style. The default is 7. IPLROM 1.6 の起動画面のスタイルを変更できます。 プロポーショナルピッチを 1、中央寄せを 2、隙間ありを 4 として、それらの合計をパラメータ iplrom16styleに指定します。 デフォルトは 7 です。
Fixed the behavior of the escape sequence "ESC = r c" in ppcon.x. ppcon.xのエスケープシーケンス「ESC = r c」の動作を修正しました。
RS-232C transmit buffer empty interrupt is implemented. The transmit interrupt output mode of bsio.x 0.21 is available. RS-232C の送信バッファ空割り込みを実装しました。bsio.x 0.21 の送信割り込み出力モードを使用できます。
;'0'~'9'を200個と$0D,$0A、最後に$1Aを送信する ;bsio.x -iのとき直ちに終了することを確認する .include doscall.mac .include iocscall.mac @@: IOCS _OSNS232C tst.l d0 beq @b moveq.l #'0',d6 moveq.l #10-1,d5 5: move.w #200-1,d4 4: move.l d6,d1 IOCS _OUT232C dbra d4,4b moveq.l #$0D,d1 IOCS _OUT232C moveq.l #$0A,d1 IOCS _OUT232C addq.w #1,d6 dbra d5,5b moveq.l #$1A,d1 IOCS _OUT232C DOS _EXIT
Added restore windows that were open checkbox to the configuration file menu. Select whether or not to restore windows that were open at exit time at startup. This setting is saved in parameter xxxopen. (Thanks megazone-mc21) 設定ファイルメニューに開いていたウインドウを復元するチェックボックスを追加しました。 終了時に開いていたウインドウを、起動時に復元するかどうか選択します。 この設定はパラメータ xxxopenに保存されます。(Thanks megazone-mc21)
Fixed a problem in which the program may not stop when going back and forth between user mode and supervisor mode when performing Instruction breakpoint, Run to here, and Step. 命令ブレークポイント、ここまで実行、ステップを行うとき、ユーザモードとスーパーバイザモードを行き来すると停止しないことがある不具合を修正しました。
It is now compatible with the SCSI Ukun Kai. There is the SCSI Ukun Kai (experimental) menu in the SCSI menu in the File menu. When the connection checkbox is turned on and reset, the built-in SCSI port switches to the SCSI Ukun Kai. This setting is stored in the parameter suk. すかじー U 君改に対応しました。 ファイルメニューの中の SCSI メニューの中にすかじー U 君改 (実験中) メニューがあります。 接続チェックボックスを ON にしてリセットすると内蔵 SCSI ポートがすかじー U 君改に切り替わります。 この設定はパラメータ sukに保存されます。
Corrected the behavior of the MC68EC030 F-line instruction. When trying to execute cpSAVE or cpRESTORE in user mode, a privilege violation exception occurs. When attempting to execute cpRESTORE in supervisor mode, it would read the effective address. The latter corresponds to an unexpected memory access which is the reason why some DOS call numbers had to be moved when Human68k was adapted to the X68030. If there was nothing in the accessed location, a bus error would occur. This fix may cause programs that do not support X68030 and do not work on the actual X68030 machine, but work in XEiJ's X68030 mode, to not work in XEiJ's X68030 mode either. MC68EC030 の F ライン命令の動作を修正しました。 ユーザモードで cpSAVE または cpRESTORE を実行しようとしたとき特権違反例外が発生します。 スーパーバイザモードで cpRESTORE を実行しようとしたとき実効アドレスをリードします。 後者は Human68k が X68030 に対応するとき一部の DOS コール番号を移動しなければならなくなった理由である予期しないメモリアクセスに相当します。 アクセスした場所に何もなければバスエラーが発生します。 この修正により、X68030 に対応しておらず X68030 実機では動かないのに XEiJ の X68030 モードでは動いてしまっていたプログラムが、XEiJ の X68030 モードでも動かなくなる可能性があります。
Added misc/flinebuserror.x. This is an experiment to call the DOS call _GETENV with the old number $FF53 on the MC68030 to generate a bus error. misc/flinebuserror.xを追加しました。MC68030 で DOS コールの _GETENV を古い番号 $FF53 で呼び出してバスエラーを発生させる実験です。
Added misc/flineprivilege.x. Check which of $FE00 to $FFFF raises a privilege violation exception when the MC68030 is in user mode. misc/flineprivilege.xを追加しました。MC68030 でユーザモードのとき $FE00~$FFFF のどれで特権違反例外が発生するか調べます。
The MPU does not stop on a privilege violation generated by a DOS call, even if the Stop on error ("!" check box in disassembly list, etc.) is enabled. エラーで停止する (逆アセンブルリストなどにある「!」チェックボックス) が有効になっていても、DOS コールで発生した特権違反では MPU が停止しないようにしました。
-fe can no longer be specified except for 68060. Privilege violation exceptions are now merged with F-line exceptions. -fe を 68060 以外で指定できないようにしました。 特権違反例外を F ライン例外に合流させるようにしました。
As of this writing, the latest OpenJDK is 23.0.1. Older versions of JDK may not work. Please use the latest OpenJDK if possible. これを書いている時点で最新の OpenJDK は 23.0.1 です。 これより古いバージョンの JDK では動作しないかも知れません。 可能な限り最新の OpenJDK を使用してください。
Fixed behavior of undefined flag V in NBCD/SBCD of MC68000. (Thanks みゆ🌹ฅ^•ω•^ฅ) MC68000 の NBCD/SBCD の未定義フラグ V の挙動を修正しました。(Thanks みゆ🌹ฅ^•ω•^ฅ)
Fixed expected of hard for ABCD/NBCD/SBCD of MC68000 in instructiontest.x. (Thanks みゆ🌹ฅ^•ω•^ฅ) instructiontest.xの MC68000 の ABCD/NBCD/SBCD の hard の expected を修正しました。(Thanks みゆ🌹ฅ^•ω•^ฅ)
High memory on 060turbo is also available on X68000. This setting can be changed using the Available on X68000 checkbox in the High memory on 060turbo menu. This setting is stored in the parameter himem68000. Note that the mere presence of high memory can cause the program to malfunction. X68000 でも 060turbo のハイメモリが使えます。 この設定は060turbo のハイメモリメニューの X68000 でも有効チェックボックスで変更できます。 この設定はパラメータ himem68000に保存されます。 ハイメモリは存在するだけでプログラムを誤動作させることがあるので注意してください。
The Use high memory on 060turbo checkbox that was in the High memory on X68030/Xellent30 menu has been moved to the Available on X68030/Xellent30 checkbox in the High memory on 060turbo menu. X68030/Xellent30 のハイメモリメニューにあった 060turbo のハイメモリを使うチェックボックスは060turbo のハイメモリメニューの X68030/Xellent30 でも有効チェックボックスに移動しました。
When started in X68000 mode, it also detects high memory and displays the range and capacity. X68000 モードで起動したときもハイメモリを検出して範囲と容量を表示します。
Fixed problem with not switching to full screen at startup. (Thanks megazone-mc21) 起動時に全画面表示に切り替わらない問題を修正しました。(Thanks megazone-mc21)
The number of wait cycles now follows changes in operating frequency. ウェイトサイクル数が動作周波数の変化に追従するようにしました。
XEiJ development environment has been updated from Windows 10 Pro to Windows 11 Pro. XEiJ の開発環境を Windows 10 Pro から Windows 11 Pro へアップデートしました。
Changed taskbar icon size from 16x16 to 48x48. タスクバーのアイコンのサイズを 16x16 から 48x48 へ変更しました。
Fixed a bug that prevented CSRs from being cleared bit by bit. Fixed a bug that CER was not cleared after writing 1 to the ERR bit of CSR. CSR をビット単位でクリアできないバグを修正しました。CSR の ERR ビットに 1 を書き込んでも CER がクリアされないバグを修正しました。
――Read more―――― 続きを読む ―― ――Hide more―――― 続きを隠す ――
I would like to thank: Right-holder companies and staffs of the SHARP PRODUCTS USERS FORUM who made efforts to distribute the basic software products of X68000 for free to the public. Keitarou Hiraki and Num Kadoma, they distribute beautiful fonts. Authors of free software that are used as execution examples of XEiJ. Everyone who reported problems and supported XEiJ by warm messages. X68000 の基本的なソフトウェアの無償公開に尽力された権利各社およびシャープ・プロダクツ・ユーザーズ・フォーラムの方々、美しいフォントを公開されている平木敬太郎さん、門真なむさん、実行サンプルとして使わせていただいたフリーソフトウェアの作者の方々、動作報告と応援のメッセージを寄せてくださった皆さん、ありがとうございます。