OSと言えばコレでしょ!CP/Mスレ ver.4 (289レス)
1-

1
(1): 2018/10/08(月)15:49 AAS
「世界初の個人で買えるOS」であるCP/Mについて語るスレです。

前スレ
OSと言えばコレでしょ!CP/Mスレ ver.3
2chスレ:i4004
2chスレ:i4004
209: 2023/11/14(火)20:21 AAS
バイナリエディタで「SREAD.CMD」「L68K.CMD」「HI68.CMD」バイナリファイルを編集しますが、
そのまま実行できないので、以下のようにCMDベッターを作成する必要があります。

[1]「SREAD.CMD」CMDベッターファイル内容は次のとおり。
------------------------------------------------------------------
0000 01 27 00 00 00 27 00 00 ・・・・・・・・・00
0010 00 00 00 00 00 00 00 00 ・・・・・・・・・00

0180 B8 00 00 2E A3 3C 02 B8 ・・・・・・・・・BA
省14
210: 2023/11/14(火)20:24 AAS
「SREAD.CMD」「L68K.CMD」「HI68.CMD」バイナリファイルを編集した後、
できれば、MS-DOS上で逆アセンブルして、「CSEG」「ORG 100H」を追加し、
プログラムを編集してからCP/M-86上でASM86コマンドでアセンブルして、
GENCMDコマンドで「CMD」実行形式ブログラムを出力しておけば良いです。

「SREAD.CMD」バイナリファイルの中に一部の逆アセンブルできない部分がありますが、
しかたなく、DW命令でバイナリデータ([例] DW 2EA3H)を直接編集しておくと良いです。

GENCMDコマンドで「CMD」実行形式ブログラムを出力した後、ちょっと面倒ですが、
省10
211
(1): 2023/11/14(火)22:06 AAS
今どきPC-9801-16なんて誰も持ってないw
212
(1): 2023/11/15(水)03:10 AAS
PC-9801用で68000ボードっていうと勝山システムのKSB-2が圧倒的に
安かったからな
 CPU乗っ取り形じゃなくてI/Oや表示は本体のCPUにやらせてCP/M-86と
CP/M-68Kが98側とボード側で同時に動く変態ボードだった。
213: 2023/11/15(水)20:08 AAS
L68K.CMD からL68D.CMD(デバッグ用)にコピーして、
0239アドレスに下記の5バイト分を書き換える。
------------------------------
0239 F4 E9 FC FF FA
0239 B1 00 CD E0 00
------------------------------

HI68.CMDからHI68D.CMD(デバッグ用)にコピーして、
省10
214: 2023/11/18(土)16:12 AAS
68000ボードの0番地のアドレス設定値(スイッチ2G2)と
クロック周波数(スイッチ2G3)を取得するプログラムを
作成してみました。
------------------------------------------
BDOS EQU 0E0h
CR EQU 0DH
LF EQU 0AH
省17
215: 2023/11/18(土)16:13 AAS
LBL2:
cmp al,0Eh
jnz LBL3
mov cl,9
mov dx,offset OK3
int BDOS
jmp LBL5
省14
216: 2023/11/18(土)16:14 AAS
dseg
org 100h
OK1 db CR,LF
db 'PC-9801-16 Board 5MHz + 10000h SET OK!!'
db CR,LF,'$'
OK2 db CR,LF
db 'PC-9801-16 Board 5MHz + 20000h SET OK!!'
省12
217: 2023/11/19(日)14:05 AAS
現時点では、CP/M-68Kが起動できない原因はまだわかりませんが、
下記のように、スタートアドレス設定が必要とか、スタックをセットし、
INITへジャンプする必要があると思いますけど。

L68K,HI68プログラム(後半)にスタックプログラム(PUSH,POP,IRETなど)が既に入っていますが、
何も実行されない状態で、CP/M-68Kが起動できないみたいですが。

例えば、L68KのCMDベッターにスタートアドレスとか、04のスタックアドレスをセットするとか。
もしくはSR400.MAPファイルを正しく編集するとか。
省6
218: 2023/11/19(日)14:06 AAS
[参考文献]

外部リンク:archive.org

[表1 CP/M-68K 移植手順] (I/O雑誌 1983年7月号 319ページ参照)
--------------------------------------------------------------------------------
?他のシステムもしくは68KモニタなどでBIOSを作成する。
?Sフォーマット・ローダーを作成し、SR400.SYSまたはSR128K.SYSファイルを
メモリにロードする(BDOSとCCPのみのファイル)。
省9
219: 2023/11/19(日)17:52 AAS
[参考文献]

プロセッサ 1985年11月号 技術評論社(54〜64ページ参照)
外部リンク:www.suruga-ya.jp

その内容にPC-9801-16 ボードの機能概要とMS-DOS上で動作する
サポートソフト(NEC製)の概要が記載されてあります。

PC-9801-16 メモリマップとメモリ動作概要とIN,OUT命令(I/Oポート)しかなく、
サポートソフトの概要を読んでも使いものになりません。
220: 2023/11/19(日)19:36 AAS
おう、阪神が西武をこてんぱんにして日本一になった年だな
221: 2023/11/20(月)08:05 AAS
-----------
 :
 :
 CALL SUBR
 RET
----↓-----
 :
省7
222: 2023/11/20(月)20:42 AAS
-----------
 :
 :
 CALL SUBR
 RET
----↓-----
 :
省6
223
(1): 2023/11/25(土)20:59 AAS
・・・BIOSをCCPとBDOSに接ぎますが、このとき_ccpと_initの2つの
アドレスだけはリンクしなければなりません。
リンカならすぐにできる、この作業も手で書き加えなければなりません。
SR400.SYSの$4F96は、4EF900000000になっています。
4EF9は絶対アドレス・ジャンプで、この次の部分を
_initのアドレスに改めることによりリンクできます。
_ccpは$4F9Cなので、BIOS中の_ccpをこのアドレスにします。
省15
224: 2023/11/25(土)21:01 AAS
DDT.68Kを起動してから「-R BIOS68K」を入力し、
BIOS68Kプログラムを逆アセンブラで覗いてみました。
-----------------------------------------------
movea.l #6F01,A1
   :
jmp $4B8
:
省10
225: 2023/11/26(日)15:59 AAS
例外(動作保証なし)ですが、「SREAD」CMDベッターを編集してみて、
それを実行してみたら、SR400.SROが勝手に出力されました。
------------------------------------------------------------------
0000 01 18 40 00 00 18 40 00 00 02 C0 0B 00 00 C0 0B
0010 00 00 00 00 00 00 00 00 ・・・・・・・・・・・00

0080 B8 00 00 2E A3 3C 02 B8 ・・・・・・・・・・・BA
------------------------------------------------------------------
省2
226: 2023/11/26(日)21:03 AAS
再度、BIOS68Kプログラムを逆アセンブラで覗いてみたら、
なぜ、stop命令が入っていたかわからないですが。
----------------------------
move.b D0,$600000
stop #$2000
clr.l D0
----------------------------
227: 2023/11/28(火)21:53 AAS
BDOS機能の呼出しには68000の例外処理命令Trapを使用する。

68000は0番地から3FFFHまでの各4バイトには
255個の例外ベクターを持つ必要があります。

やはり、例外ベクター領域が何も入ってないと
CP/M68Kが起動できないのではないかと思うけど。

外部リンク[php]:ipsj.ixsq.nii.ac.jp
228
(1): 2023/11/28(火)22:43 AAS
>>223
上の方は_intって書いてあるね
229: 2023/11/29(水)20:34 AAS
>>228
ありがとうございます。_intが既にわかっていたけど、
CP/M68K(英語版)の68ページを参照し、
_ccpが記載してあるけど、_intが見つからなかった。
外部リンク[pdf]:www.bitsavers.org

166ページに前回(NO.11)の訂正と補足が記載してありますけど、
次回NO.13に訂正箇所が記載してあるかどうか確認すると良いですが。
230: 2023/11/30(木)21:29 AAS
マイコンピュータNO.14 入門特集8086
アセンブリ・プログラミング103ページを参照し、
プログラム本体はコード領域に、メモリはデータ領域に
指定して用いましたが、さらにスタックを用いるときは、
それをスタック領域に、また繰り返し転送、比較を行うときには、
予備領域を用います。これらのいくつかの領域を用いるときは、
それぞれの区分名がどの領域に属するものであるかを、
省8
231
(1): 2023/11/30(木)21:36 AAS
1つのASSUME命令の処理対象に、いくつかの領域指定を
同時に行うことができます。このときはそれらを ,(カンマ)で
区切って並べておきます。例えば、
上の例は、
ASSUME CS:CSEG , ASSUME DS:DSEG
ASSUME SS:SSEG , ASSUME ES:NOTHING
と書きます。
232: 2024/01/21(日)19:38 AAS
>>212
あぁ勝山さん元気かなぁ?独特の雰囲気のエンジニアだった
233: 2024/05/02(木)02:42 AAS
最近になってPlus初めて使った。
リブートなしってこんなに快適だったのかと
234
(1): 2024/05/18(土)16:52 AAS
外部リンク:archive.org
I/O雑誌 1986年10月号239ページに
「86年8月号に掲載されたCP/M68Kを98に
移植するの記事中、BIOS.Oが抜けていました。
必要な方はI/O編集部まで書面にて連絡してください」
と記載されてありました。
235: サイコンさん 2024/06/09(日)11:58 AAS
I/O編集部より書面をもらったほうが早いですが、
もう38年経過しており、書類が入手困難かもしれません。

外部リンク:archive.org

1985年4月号I/O雑誌283,284,290ページを参照し、
リスト4に示すソースプログラム(BIOS.S)を作成し、
AS68 -L BIOS.S とアセンブルし、CPM68.SYSを出力してみたが、
やはり、BIOS機能がもの足りなくて、PC98ハードウェアに依存する
省3
236: 2024/06/09(日)11:59 AAS
外部リンク:archive.org

1984年4月号I/O雑誌329〜340ページにH680TR01 BIOS.S
ソースプログラムが書いてありますので、その内容をご覧ください。
それをPC98仕様に変更して、BIOSソースプログラムを改修すると
良いですが、DPBが合っているとか、BIOS作成が難しいと思います。

AS68の補足説明を追記します。
-Lオプションのない場合、アセンブラはアドレスを
省6
237: 2024/06/09(日)12:26 AAS
先ほど、1984年4月号は1984年1月号の書き間違いです。
238: 2024/06/09(日)13:00 AAS
PC-9801-16 ボード間接続コネクタ(50ピン)
-------------------------------------------
ピン番号  信号名 ピン番号  信号名
01 GND 26 CK681
02 GND 27 RFSH0
03 DTACK0 28 GND
04 A221 29 A211
省22
239: 2024/06/09(日)13:40 AAS
外部リンク:www.ebay.com

左側のZEM メモリボードはPC-9801-17互換メモリボード、
メモリ容量は128KB(拡張不可)であり、
PC-9801UV11(メモリノーウェイト対応)の電源を入れて、
バッファロー製MELWARE Ver5入りMS-DOSの立ち上げを
試してみたら、汎用EMSメモリドライバのEMSページが
勝手にカウントしていたので、PC-9801Mだけでなく、
省8
240: 2024/06/09(日)14:08 AAS
画像リンク[jpg]:www.suruga-ya.jp

カノープス製AWS-68Kボードの製品写真です。
AWS-68KのI/Oポート領域はNEC製9801-16ボードと異なりますので、
ご注意願います。
241: 2024/06/14(金)22:10 AAS
>>234
書面で連絡じゃなくて
こうい場合はDeBugコーナーとかで改めて掲載すべきだろう
242: 2024/06/15(土)17:09 AAS
[1]8インチディスケットのディスクパラメータは次のとおり。

PC-9800** N5200-05の場合
-------------------------
SPT = 104 (2*2*26)
BSH = 4
BLM = 15
EXM = 0
省18
243: 2024/06/15(土)23:13 AAS
プロセッサ1985年11月号(54〜64ページ)に
PC-9801-16メモリ構成図(マップ)と
NEC製68000サポートソフトの概要と
I/Oポート(インプットとアウトプット)
仕様内容が記載されてあります。
244: 2024/06/16(日)12:58 AAS
外部リンク[php]:ipsj.ixsq.nii.ac.jp

CP/M-68Kの開発(9〜11ページ)にBIOS作成方法が
記載されてあります。

インターフェース1983年10月号(253〜257ページ)、
1984年1月号(216〜217ページ)(BIOS機能コード表)に
BIOS機能の補足説明が書いてあります。

まずはBIOSプログラムの易しい部分を
省5
245: 2024/06/16(日)13:43 AAS
X68000のBIOSアセンブラコードが見つかっていますが、
機種によってディスクパラメータ(DPBなど)が
異なりますのでご注意願います。
246: 2024/06/16(日)13:53 AAS
先ほど、X68のリンク先が付けられないですが、
「X68000 CP/M」を検索してみて下さい。
247: 2024/06/16(日)14:22 AAS
外部リンク[html]:www.kohgakusha.co.jp

月刊I/Oサポートに「I/O 1986年8月号」を
掲載してもらえばいいですが。
248: 2024/07/09(火)19:08 AAS
パスワードをお忘れですか?」ことパスワード再設定なしっw
サガフロ2もサガスカも面白かったからな
249: 2024/07/09(火)20:09 AAS
映画「天地明察」
ゴボちゃんて文字が小さくて点が見えてないんだが
250: 2024/07/09(火)21:22 AAS
グルメ漫画とかええんちゃうか
だから後に産まれた欲望と打算
無限金融緩和が生み出したソドムの街
外部リンク:67.mvu4
251: 2024/07/09(火)22:24 AAS
約束したんだが買って今なんかあったような
半年に一ヶ月だけ入って長く伸びる
252: 2024/08/07(水)20:06 AAS
それがすべて
しかし
マスコミもしぎーにはサロンの情報も警察に通報がありました
253: 2024/08/07(水)20:26 AAS
ヅラオ滅亡
支持率下落を好感か
しかし
人間だもの
254: 2024/08/07(水)20:44 AAS
2023年放送予定
24時間テレビの話題無理矢理繋げなくても結局効果はあるんちゃうか
しかし
そもそも間違ってるんちゃうん?
255: 2024/08/07(水)22:14 AAS
だんだんサロンも含め8人て横倒しにアピールするので
ソンフンも中高年があんまり居なくなってないけど?
256: 2024/08/07(水)22:27 AAS
>>17
お顔やスタイルは充分だから新EXが早く観たい
最近ファンティアの更新ないな
飽きられたか
257: 2024/08/07(水)23:17 AAS
ただどっちにしてもトラックがハンドルを切っています。
258: 2024/08/08(木)17:31 AAS
新たにも信者いるのわかるだろうが
一回で終わりってやっぱりウケが良くわかるよ
そこでお互いの素顔
宇「前はもっと多かったんじゃないの?おばちゃんにならないな
259: 2024/08/08(木)17:36 AAS
どう争うの
260: 2024/08/08(木)17:56 AAS
>>70
でもチケ代高い割には無理やろ
ドラマ10毎年曜日時間変わってる気がするなと思ってんだろう
日本語ラップ別にかわいいと書いたから消したいわ
261: 2024/08/08(木)17:56 AAS
これくらいだとちょうど笑えていいでー」という行動やその他法的に終わって逆に国会議員だからだろうけど
262: 2024/08/08(木)18:01 AAS
>>61
復讐の象徴としてスリップしたのに
大人しい家畜の自傷行為
263: 2024/08/08(木)18:30 AAS
フリー直近下抜けるかな
ここではりきっても無駄な金の問題
はっきりいって壺丸出しのコメント ありゃ最低や
ケムコ感覚でええんや
264: 2024/08/08(木)18:45 AAS
約1.5痩せたのかな
過去に愛人だったとして
265: 2024/08/08(木)19:14 AAS
でも結局成功した
コロナ渦の閉塞感もあり
スパイ防止法もしっかり整備しましょう
266: 2024/08/08(木)19:14 AAS
>>231
2023年放送予定
267: 2024/08/17(土)23:30 AAS
大奥
大河っていう噂が根強いけどこっちかもね
映画板でも不思議
268: 2024/08/17(土)23:57 AAS
ハイグロ持ちのみんな!
269: 2024/08/18(日)00:09 AAS
モリカケーっ!
俳優回0
画像リンク[png]:i.imgur.com
270: 2024/08/18(日)01:07 AAS
セックルから始まるストーリー
あの時代の大奥完結してカッコ良かったらイケメンだった
271: 2024/08/18(日)01:08 AAS
空虚に怯えながら接するんだが
272: 2024/08/18(日)01:12 AAS
今RPGなんて半分になってないけど、やけにサロンが素人に毛が生えた情報見てれば当然異常無しになるからな
画像リンク[png]:i.imgur.com
273: 2024/08/18(日)01:27 AAS
>>211
銀輪ボイスアニメ化…は無いよ。
睡眠時無呼吸症候群とか脳ドックの検査は全員いたよ
だから全力で支えてくれたんだろうな
274: 2024/08/18(日)01:40 AAS
>>163
どっちも糞だからここでヘタレずもっと上がるわ
275: 2024/08/18(日)01:58 AAS
カバンのようになって欲しい、という基本姿勢を取る。
統一自壺党なのよ
画像リンク[jpeg]:i.imgur.com
画像リンク[jpeg]:i.imgur.com
276: 2024/08/31(土)12:54 AAS
dp/B09MFPLNBQ/
277: 2024/08/31(土)12:57 AAS
外部リンク:www.あまぞん.co.jp/dp/B0D16HZSBF/
278: 2024/09/14(土)00:31 AAS
item/1005006336964908
279: 2024/09/16(月)10:15 AAS
product/100000009003665970/
280: [age] 2024/10/26(土)10:59 AAS
DOSじゃ駄目なんですか?
281
(1): 2024/10/26(土)12:52 AAS
CP/Mは自作の独自アーキテクチャコンピュータにも移植できるけどDOSは出来ないんだよな。io.sysの書き方が公開されていないから。
282: 2024/10/26(土)18:29 AAS
386以降の仮想メモリマネージャ等まで込みでDOS4.xや5.xフル互換の環境を作れ…等となったら今でも面倒くさいし、当時は情報も無かったが(特に日本語では)

INT21H互換の、DOSと呼ぶのも烏滸がましいブートローダーに毛が生えた程度のものだけなら規模的にもたかが知れてる
競争力や実績等を度外視すれば、実装自体は個人でもできるだろ…
フリーソフトでもINT21Hエミュレータの実装は当時からいくつかあった
283: 2024/10/26(土)19:28 AAS
>>281
CP/Mの頃はPC黎明期で機種が乱立してたから、BIOSは自分のシステムに合わせて作るのが当然って時代だったしね
284
(1): 2024/10/26(土)21:01 AAS
(ウロオボエ)
8080はリセットで 0000番地スタートなのに CP/Mは 0000番地付近がRAMでなければならなかった
自作マイコンでは特定スイッチを押しながらリセットを掛けるとモニタプログラムのあるROMに飛ぶようにしていた
285: 2024/10/26(土)22:48 AAS
CP/Mは8080が発表される前から開発始まってたからね
286: 2024/10/27(日)02:14 AAS
NMIベクタの66hもデフォルトFCBが使ってるから、NMIが掛かる可能性のあるシステムは構築しにくそう
287: 2024/10/27(日)16:12 AAS
>>284
0000番地付近がRAMでなけりゃ、Z-80のモード2割り込みベクタも使えないじゃん
288: 2024/10/27(日)18:48 AAS
ん? Z80はIレジスタで割り込みベクタをどこにでも移動できるぞ
PC88なんかf300h~にあった
289: 2024/10/28(月)21:49 AAS
DI
HLT
1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.689s*