OSと言えばコレでしょ!CP/Mスレ ver.4
1 :ナイコンさん :2018/10/08(月) 15:49:50.58 .net 「世界初の個人で買えるOS」であるCP/Mについて語るスレです。 前スレ OSと言えばコレでしょ!CP/Mスレ ver.3 http://matsuri.2ch.net/test/read.cgi/i4004/1416873034/ https://matsuri.5ch.net/test/read.cgi/i4004/1416873034/
2 :ナイコンさん :2018/10/08(月) 15:50:35.64 .net CP/M - Wikipedia http://ja.wikipedia.org/wiki/CP/M
3 :ナイコンさん :2018/10/08(月) 16:42:34.84 .net >>1 https://i.imgur.com/kB3jqVU.gif
4 :ナイコンさん :2018/10/08(月) 17:51:02.08 .net Z80でTCP/IPって、どんな用途に使うんだろう・・・? ちょっと高いけど大きめのRJ-45コネクタで、CPU側からはシリアルポートに見えるようなものもあるのに?? SDのドライバも存在するからTCP/IPがあってもいいと思うけど。
5 :ナイコンさん :2018/10/08(月) 22:37:59.61 .net sharpランゲージシリーズのCP/M買ったけどほとんど使わなかったw OSと別に言語買わないといけなくて、しかもPascalがディスク待ちばかりで萎えた。
6 :ナイコンさん :2018/10/09(火) 21:25:09.63 .net 前スレにも出てきたが、このサイトはテンプレに入れてもいいんじゃないかな。 The Unofficial CP/M Web site h ttp://www.cpm.z80.de/
7 :ナイコンさん :2018/10/10(水) 21:36:27.05 .net >>6 何年後かわからんが、次スイ建てるひとはよろしくやってくれると俺は信じる! 来年中には次スレ建つとは思うけど。
8 :ナイコンさん :2018/10/10(水) 21:52:36.59 .net んなこたーない
9 :ナイコンさん :2018/10/10(水) 22:56:11.18 .net 最初のスレは埋まるのに12年かかったのを思うと 書き込みが多くなったんだな。
10 :ナイコンさん :2018/10/11(木) 04:07:53.49 .net CP/Mに対するニーズが増えたのか、CP/Mを知ってる人が増えたのか、 それともCP/Mスレの住民が暇になっただけか。
11 :ナイコンさん :2018/10/11(木) 09:52:11.91 .net つ 定年
12 :ナイコンさん :2018/10/11(木) 17:24:09.31 .net 趣味じゃなく、今もCP/Mを使って仕事してる人がいたらすごい
13 :ナイコンさん :2018/10/11(木) 18:44:36.30 .net CP/MクローンのMS-Dosの子孫のwindosを使わず仕事してる奴いるの?実質CP/Mじゃん
14 :ナイコンさん :2018/10/11(木) 19:54:22.18 .net お前はマウスつかわないのか?
15 :ナイコンさん :2018/10/11(木) 20:57:24.78 .net フォルダ使わずにすべてのファイルをルートに置いてたら認めよう
16 :ナイコンさん :2018/10/11(木) 22:02:26.37 .net コンカレントCP/Mってマウス対応してたような
17 :ナイコンさん :2018/10/11(木) 22:15:50.18 .net GEMとかGSXといったグラフィクス環境で実現されてた
18 :ナイコンさん :2018/10/13(土) 20:36:50.29 .net >>11 確かにw
19 :ナイコンさん :2018/10/14(日) 05:49:58.06 .net CP/Mとかの昔モノが絶えたからじゃない? 地方の市が栄えているのと同じ理由。 市の人口が増えてるんで栄えてると思いきや、その周辺が滅びて住人が市に移動してる感じ
20 :ナイコンさん :2018/10/17(水) 02:48:52.27 .net 私たち日本人の、日本国憲法を改正しましょう。 総ム省の、『憲法改正國民投票法』、でググって みてください。拡散も含め、お願い致します。
21 :ナイコンさん :2018/11/11(日) 05:41:16.14 .net 憲法とか関係ないから。 こんな過疎板までやって楽しいの?
22 :ナイコンさん :2018/11/11(日) 05:51:09.16 .net つか、CP/Mを個人で買ったのがどんだけいるのかと。 TurboPascal目的\やSharpランゲージシリーズ(どちらも後期)以外では多くないんじゃ…って思う。
23 :ナイコンさん :2018/11/11(日) 09:41:37.58 .net 日本では39000円くらいしたかな 8bitパソコンが出る前はCP/Mを個人で買う人はマニアくらいのもんだな 既に動いているCP/Mマシンが無いと別マシン用のCP/Mを作れなかった 自分は会社のマシンを休み時間に使わせてもらった “当然”自分では買ってないw
24 :ナイコンさん :2018/11/11(日) 11:12:49.41 .net パソコンショップでバイトしてたとき、客先行ってちょっと 様子見てくれって言われて。 MS-DOSかと思っていじったらCP/M-86で驚いた。よく似てた。 昭和の話。
25 :ナイコンさん :2018/11/11(日) 11:49:48.65 .net パクリだしな コンピュータ関係の著作権が緩かった古き良き時代
26 :ナイコンさん :2018/11/29(木) 05:48:04.82 .net TP(TurboPascal) サザンパシフィックとマイクロソフトどっちが良かったんだろ? なんか雑誌でもめてるって記事見た記憶がある。遠い昔だけど
27 :ナイコンさん :2018/11/29(木) 06:33:49.91 .net SPLとMSAが雑誌で揉めたのはTPではなくてTCだろ。
28 :ナイコンさん :2018/11/29(木) 08:05:01.41 .net これだから香具師は
29 :ナイコンさん :2018/12/22(土) 12:57:12.03 .net DDTって機種依存するっけ?
30 :ナイコンさん :2018/12/22(土) 13:33:03.86 .net 環境によっては 0038H をハードウェア割り込みに使ってたりするので そういう場合は要パッチ >DDT
31 :ナイコンさん :2018/12/22(土) 13:38:57.53 .net 0038H(RST7)ってメモリが無い場所へ暴走したときのトラップに使ってたかも
32 :ナイコンさん :2018/12/22(土) 15:08:49.88 .net >>30 情報あんがと。 CP/Mのエミュ環境作りだして、CP/M Playerを移植しようかと思ったんだけど8ビットPCエミュの上に作ったほうがよさげだね。 正月、どうせ暇だしほかにやることないから頑張ってみるかな。
33 :ナイコンさん :2018/12/22(土) 18:09:16.44 .net IM 1 の時は無条件で RST 38H だった
34 :ナイコンさん :2018/12/23(日) 11:57:19.11 .net RST 38H = FFHだから、メモリが存在しない番地を実行しようとしたときは都合がいい
35 :ナイコンさん :2019/03/16(土) 09:18:13.63 .net vectorでソース付きでZ80エミュ公開してる人のをいくつか見たけどC言語で書かれてるのが多いね・・・
36 :ナイコンさん :2019/03/16(土) 18:17:32.78 .net COBOLで書けと?
37 :ナイコンさん :2019/03/16(土) 23:02:35.06 .net FORTRAN77で頼む
38 :ナイコンさん :2019/03/22(金) 01:46:31.35 .net CP/Mってファイルエントリーが144ででかいファイルがあるとファイル数が減るみた いな事書いてあったけどこれってディスクを丸ごと144等分してて一定のサイズを超 えると次ファイルまで潰れるってことですかね 小さいファイルを大量に扱う場合はまとめるためのアーカイバが必要とか思ったり (x68kに無圧縮のアーカイバが付属してて何のためにあるのか疑問だったけど 開発初期はCP/Mファイルシステムだったのかしら
39 :ナイコンさん :2019/03/22(金) 13:14:17.81 .net Cで使う.libなんてのも中身はarだし、リソースの少なかった昔の環境では無駄はあまりないよ
40 :ナイコンさん :2019/03/22(金) 19:35:24.16 .net >>38 たしか、 どのセクタにデータが書かれているかの情報がファイルエントリー内にあって、 大きいファイルになると足りなくなって別のエントリーを使うような感じ。だったはず。
41 :ナイコンさん :2019/03/22(金) 20:12:36.62 .net >>38 1つの管理領域(extent)で16KBまでの管理ができる 24KBくらいのプログラムを読み込むときはFDDのシーク音が トン トン トン ギーコ トン トン というような感じだった ギーコで2個目のextentをアクセスしている
42 :ナイコンさん :2019/03/22(金) 20:13:07.57 .net >>38 ちょっと違うかな。 それはFAT12ファイルシステムの話。 エントリの最大数は112だったような?(細かい数字は失念) FAT12を採用してる限り、CP/Mに限らずどのOSでも同じだったはず。 あと2Dとか2DDなど、メディアの種類によってもエントリ数が違ったような…
43 :ナイコンさん :2019/03/22(金) 21:19:56.48 .net CP/MはFATではない ディレクトリエントリに直接FATみたいなデータがあって大きいファイルはディレクトリエントリを複数使う
44 :ナイコンさん :2019/03/23(土) 13:46:25.81 .net 1エントリー16kで等分されてるんですか小さいファイルでも16k消費するみたいな 工夫でなんとかなるから無駄とは思わないし直感的に分かりやすいですね
45 :ナイコンさん :2019/05/12(日) 23:30:24.20 .net 武田さんところのCPMPlayerをVCからBCC/GCCに移植したんだが元ソース読みづらいし 元々Windows環境のためかutils関数群がWindows依存で困る。 raspi上で動かせるよう目指したが、関数依存で他の環境に移植できず止まってる
46 :ナイコンさん :2019/05/13(月) 11:57:05.55 .net >Windows依存で困る それをなんとかするのが移植でしょうに
47 :ナイコンさん :2019/05/15(水) 00:11:17.09 .net 今時windows依存とかゴミ過ぎだろ
48 :ナイコンさん :2019/05/18(土) 18:39:56.73 .net 今時のPCは99%Windowsなんだから困る奴のほうがゴミ技術者だろ
49 :ナイコンさん :2019/05/18(土) 19:03:42.59 .net Windows向けに書いてるのにWindowsに依存するなとかw 素人プログラマかよw
50 :ナイコンさん :2019/05/18(土) 22:04:30.12 .net そういうバカに限ってマックを使いたがるのは何でだぜ?
51 :ナイコンさん :2019/05/18(土) 23:03:01.73 .net LinuxにCP/Mエミュぐらいいろいろあるだろうに移植しなくても
52 :ナイコンさん :2019/05/24(金) 05:38:08.89 .net Javaで書いちゃいなよYou。
53 :ナイコンさん :2019/05/24(金) 15:57:12.56 .net コンソールアプリのわりには、Windowsに依存してるよね。 まー、エスケープシーケンスの処理とか入ってると思うと仕方ないかなー、ともおもう。
54 :ナイコンさん :2019/05/24(金) 22:38:54.55 .net 一体この子は何を言ってるんだw 大多数の人、市場はCP/M→DOS→Windowsって進んだんだよw
55 :ナイコンさん :2019/05/25(土) 02:50:37.54 .net Linuxが安定したのがつい最近、ここ10年だということを知らないのさ。
56 :ナイコンさん :2019/05/25(土) 15:24:14.74 .net Linaxが安定したのがつい最近ならMaicrosoftはいつ安定するんだい?いまだに毎月アップデートしてるけど
57 :ナイコンさん :2019/05/25(土) 16:02:58.44 .net >>54 これってどこにかかってるんだw
58 :ナイコンさん :2019/05/25(土) 19:23:35.21 .net Linuxが安定ねぇ。 カーネルは20年ぐらい前から安定動作してるけどXより上は今でも不安定っちゃ不安定だろ。 ひところよりはましになってるけど。
59 :ナイコンさん :2019/05/25(土) 20:22:42.77 .net >>57 分かるまでROMってなさいw
60 :ナイコンさん :2019/05/26(日) 08:15:22.97 .net CP/MプレイヤーをJavaで書き換えてる俺より先にGCCに書き換えちゃった人が出てきたみたいだ。 正月に手を付けたけどなかなか気が向かなくて、ちょっとずつやってるんでトータルでまだ5日分ぐらいかな? でも夏休みまでには終わりそうだ(今年の夏休みとは言ってないw
61 :ナイコンさん :2019/05/26(日) 14:44:23.49 .net Java屋はなんでもJavaで置き換えようと必死だけど需要ないよね。
62 :ナイコンさん :2019/05/26(日) 17:53:22.92 .net 冷蔵庫の閉め忘れをセンサーで検出する機能のようなものであるとハードと連携しないとうまくいかないからエミュレーターでI/Oポートが利用できないと難しいが CP/Mで動くBMI計算とか簡単なお薬り検索データベースとか簡単な健康用アプリ作ればjavaでも需要はあるかもね 高齢だからな
63 :ナイコンさん :2019/05/26(日) 18:58:31.58 .net Javaで書いてるのはAndroidのソフト作るための勉強だよ。 完全に趣味だからのんびりやってる。 50すぎてからJavaに手を出したけど、なかなか面白い言語だよねJava。
64 :ナイコンさん :2019/05/26(日) 22:39:51.97 .net googleはJavaパクリ訴訟で負けたから、これからのandroidはkotlinの時代なのに
65 :ナイコンさん :2019/05/26(日) 22:59:35.38 .net 今更JABAとかこの板らしくて微笑ましいじゃないかw
66 :ナイコンさん :2019/05/27(月) 00:09:44.14 .net 8(オレオ)も9(パイ)もAOSP見たら中はJavaだったし、AndroidStudioもコトリンと言いつつJavaみたいだったけど? コンパイラの名前が違うぐらいじゃねーのか?
67 :ナイコンさん :2019/05/29(水) 00:18:25.15 .net OS本体の話ではなくアプリ作成だろう既に50%超えてるらしいよコトリン
68 :ナイコンさん :2019/06/02(日) 06:05:35.88 .net 古都リンってなんや? アンドロイドのせいで やっとJAVA一色の世界がやってきたのかと思ったのにちがうのか
69 :ナイコンさん :2019/06/16(日) 09:22:23.71 .net >>51 Linuxで動くsimhというエミュレーターがいろいろなハードウェアに対応してるね vax780やPDP-11にも対応してて4.2BSDや4.3BSD、Version7 UNIXなど昔のUNIXも走る その中でAltairZ80というのがあってこれがAltair 8800のエミュレーターで8080だけでなくZ80にも対応してる simh、AltairZ80でGoogleで検索するとCP/Mを動かしてる人のページがいろいろ出てくる
70 :ナイコンさん :2019/06/16(日) 09:24:19.26 .net あと、simhはWindows上のCygwinでもコンパイルして動作する
71 :ナイコンさん :2019/06/16(日) 09:31:23.88 .net ttps://schorn.ch/altair.html ここにsimhのWindows版やMac版のバイナリがある CP/Mのディスクイメージもここにある Linuxならsimhを自分でビルドした方がいい Raspberry PIでやってる人もいるね
72 :ナイコンさん :2019/07/29(月) 13:10:06.31 .net 文字コードのマルチバイト系は動作するのかな?
73 :ナイコンさん :2019/08/20(火) 00:39:19.87 .net >>72 ウンコ
74 :ナイコンさん :2019/08/22(木) 07:31:43.14 .net >>72 文字コードのマルチバイト系は動作するのかね?
75 :ナイコンさん :2019/08/22(木) 12:32:10.60 .net >>74 文字コードのマルチバイト系は動作するのかの?
76 :ナイコンさん :2019/10/06(日) 17:34:12.75 .net なんとかキー入力とテキスト表示が実装できたぞJava版(になると良いな)CP/M Player。 CPUと仮想マシン部分が別物になってしまってるけど・・・
77 :ナイコンさん :2019/10/07(月) 22:12:51.53 .net CPUエミュレータもJavaなのか。
78 :ナイコンさん :2019/10/07(月) 22:16:05.94 .net 今も昔もみんなJVM入れたがらないから使ってもらえないぞ。
79 : :2019/10/11(Fri) 09:29:19 .net Java版CP/Mplayerは自習用だから公開するつもりはないよ。
80 : :2019/10/12(Sat) 01:06:59 .net なら開発過程はチラシのウラにでも書いてろ
81 :ナイコンさん :2019/10/12(Sat) 13:23:40 .net ここがチラシの裏なんだが?
82 : :2019/10/13(Sun) 00:21:09 .net チラシの裏の意味がわかってない
83 : :2019/10/13(Sun) 08:28:31 .net なら開発過程は自分の日記にでも書いてろ
84 : :2019/10/13(Sun) 08:35:10 .net ブログでやれ 数viewはあるかも
85 : :2019/10/13(Sun) 09:27:52 .net 裏が白いチラシは貴重
86 :ナイコンさん :2019/10/14(月) 21:42:22.02 .net ここは公衆便所の壁だろw チラシの裏の方が数段格上だ チラ裏なら他人様に一切迷惑をかけたりはしないからなw
87 : :2019/10/15(Tue) 01:13:56 .net >チラシの裏 おまえんちで閉じてろ=他人の目にさらすな って意味だと思ったが、今は違うのか
88 : :2019/10/17(木) 13:40:45 .net 過疎スレなんだからCP/M関連なら何書いてもいいと思うが
89 :ナイコンさん :2019/10/17(木) 17:48:16.97 .net 現時点でCP/Mはフリー配布ってことになってるのかしら
90 :ナイコンさん :2019/10/17(木) 23:30:31.56 .net >>89 ライセンスはSCO子会社のLineoが持っている(らしい) Lineoの許諾を受けたUnofficialなサイトからダウンロード可能 自分で使う分には実質フリーだと思っていいのでは Unofficial CP/M pageのFAQにも書いてある
91 :ナイコンさん :2019/10/27(日) 10:51:34.03 .net 年末にZ80伝説が出るけど、やっぱり自分で作る人増えるのかな? Z80はまだ手に入るよね するとプログラム作る上でCP/Mエミュレータとフリーで配布されてるソフトが役に立ちそうだね
92 :ナイコンさん :2019/11/09(土) 12:30:11.28 .net 6502や8080だと命令数が少なくて実装作業は楽なのだがZ80や6809になると命令数が 16bitのように増えるので個人レベルで楽しむのはかなり大変な作業になると思う。 オープンソースのソフトがあると便利だね。
93 :ナイコンさん :2019/11/09(土) 19:53:23.40 .net CP/M(1.4)は当時38000円だったかな (Lifeboat?) BIOSは自分のマシンに合わせてASMソースレベルでカスタマイズが必要 それには既に稼働している別のCP/Mマシンが必要だった
94 :ナイコンさん :2019/11/15(金) 13:39:09.17 .net 8080伝説にCP/Mはアメリカでは75ドルで売られてたと書かれてたような 1ドル250円として計算しても19000円くらいか アメリカでは安かったので爆発的に普及 日本とアメリカではずいぶんと事情が違ってたんだろうね
95 :ナイコンさん :2019/11/15(金) 19:13:24.90 .net https://upload.wikimedia.org/wikipedia/commons/1/12/CP%E2%81%84M_Ad%2C_Dec_11%2C_1978.png 何年の話か知らんが広告はこうだ。
96 :ナイコンさん :2019/11/16(土) 01:57:39.80 .net >>95 MAC? …Appleはデジタルリサーチから権利買ったんだろうか?
97 :ナイコンさん :2019/11/16(土) 08:08:40.55 .net >>96 8080、Z80用のマクロアセンブラ。MAC80.COMだったかな。 自分はずっとM80使ってたけど、 ネット上に有ったCP/MをPC-8801に移植する際に 付属のセクターデブロッキングのソースがMACでしかアセンブル出来なかった。 昔のASMソースにはMAC専用のマクロが書かれている場合もあるようだ。
98 :ナイコンさん :2019/11/18(月) 13:57:01.11 .net 関係ないけどAppleIIにはz80拡張ボードがあってCP/Mが使えた
99 :ナイコンさん :2019/11/19(火) 11:52:10.44 .net >>95 シンボリックデバッガってこの時代からあったのか
100 :ナイコンさん :2019/11/19(火) 11:53:55.17 .net >>98 MicrosoftのSoftCardでしょ。Z80カードとCP/Mのセット 単体としては世界で最も売れたCP/Mだったらしいね
101 :ナイコンさん :2019/11/19(火) 13:55:19.99 .net >>100 WikipediaのSoftCardの項目に The SoftCard was developed by Tim Paterson of Seattle Computer Products (SCP). と書かれてるね MS-DOSの元となったQDOSを開発したのがSCPのTim Patersonだから このときの付き合いがきっかけでMS-DOSが誕生したのかな?
102 :ナイコンさん :2019/11/19(火) 13:56:46.06 .net ちなみにマイクロソフトはQDOSの件でTim Patersonに訴訟を起こされて和解してるんだよね
103 :ナイコンさん :2019/11/20(水) 01:26:28.02 .net Java版CP/MプレイヤーをAndroidに移植完了!って自分のサイトにひっそりとおいておいたらダウンロードしていった奇特な奴がいたw サーチエンジンのクロウラーかなぁ?
104 :ナイコンさん :2019/11/20(水) 09:06:26.56 .net 多分それ。 うちも誰も来ない個人ホームページ(死語)を放置してあるけど 1日2〜3のアクセスがある。
105 :ナイコンさん :2019/11/20(水) 11:51:42.79 .net インターネットアーカイブかも
106 :ナイコンさん :2019/12/14(土) 14:44:09.51 .net CP/Mで動くブラウザってあったっけ?
107 :ナイコンさん :2019/12/14(土) 17:13:57.84 .net 昔ドスパラにCPMの詰合せがCD5枚組とかで売っていたから購入しとけば良かった。
108 :ナイコンさん :2019/12/16(月) 04:14:46.80 .net CD5枚組? どんな内容だったんだろ。
109 :ナイコンさん :2019/12/16(月) 09:59:48.68 .net そんなに入れるものあるのか? ウォールナッツクリークのCP/M CD-ROMでも、一枚で随分余裕があったぞ。
110 :ナイコンさん :2019/12/16(月) 18:16:37.38 .net マイナーなヤツとバージョン毎では無いかと。
111 :ナイコンさん :2019/12/18(水) 22:19:21.36 .net 111
112 :ナイコンさん :2019/12/18(水) 22:49:03.12 .net PC−98版のCP/Mってでてたのね。ジャンクで見つけた。
113 :ナイコンさん :2019/12/19(木) 11:57:46.81 .net DOSが一般化する前はCP/M86も結構使われていたような
114 :ナイコンさん :2019/12/19(木) 20:19:58.57 .net V30で8080エミュレーション使う話じゃないのか。
115 :ナイコンさん :2019/12/24(火) 22:53:05.75 .net CP/M86 は初代9801とほぼ同時に出荷。82年末。MS-DOSは翌年春。 9801用にはシングルユーザ・マルチタスク版のコンカレントCP/M86もあった。 といってもせいぜいプリンタをバックグラウンドで動かす程度しかできなかったけど。 さらに98用ではなかったっと思うけどマルチユーザ版のMP/M86もあった。 ホスト機のシリアルに文字端末を1ー2台程度つなげて複数人で使えるというもの。 ノンプリエンティブで初期8086が非力なのでお待たさせ感いっぱいで重かったです。 VM2@v30の8080エミュ利用のナンチャッテCP/Mは実際に商品として売られていたです。 83-88年?くらいまではC-BUSなz80基板のカノープスのplus80が人気で 横浜のサザンパシフィックの64180基板とか、類似のCP/Mエミュも売られていた。 ま、それらもDOS用のクロス環境の充実とともにサチュレートしちゃいましたが。
116 :ナイコンさん :2019/12/26(木) 12:18:50.35 .net 文豪Mini5
117 :ナイコンさん :2019/12/26(木) 13:40:01.74 .net >>115 98用CP/M86は、ディスクが一万円でマニュアルが1.5万円だったんだよな。 DiskBasicで使ってたけど、アセンブラが欲しかったんでCP/M86のディスクだけ買って CP/MでアセンブルしてオブジェクトファイルをBASIC側で読むプログラム作って BASIC+機械語で使ってたわ。
118 :ナイコンさん :2019/12/27(金) 22:14:22.56 .net >>115 >それらもDOS用のクロス環境の充実とともに たしかに、DOS版PROASM-II が出てから、98+Z80カードのCP/Mエミュとはいえ、 CP/MのバッチファイルでM80でアセンブルするのが面倒くさくなったな。 DOS版ならMakeもつかえるし。
119 :ナイコンさん :2020/03/09(月) 22:30:21 .net 海外でZedRipperというFPGAでマルチコア16個のZ80マシンを設計した人がいる様子。 CP/MがホストでCP/NOSがクライアント? http://www.chrisfenton.com/the-zedripper-part-1/
120 :ナイコンさん :2020/03/10(火) 22:20:12 .net インターコネクトにリングバス使ってるのが堅実でいいね クロスバーで16ノードとか個人だと手に余りそうだし
121 :ナイコンさん :2020/06/09(火) 13:51:19.36 .net X1 turboZ用にCP/Mとhitech C買ってC言語勉強した想い出。 320kb RAMボードも買って無音コンパイルがすげー速くて感動したっけ。
122 :ナイコンさん :2020/06/19(金) 23:45:15 .net CP/M Version3(CP/M Plus)はZ80でなくi8080やi8085でもよかったんだね。 非バンクメモリ版とバンクメモリ版(最大16バンク)があり、 最大16台のストレージ(A:〜P:)を扱える。
123 :ナイコンさん :2020/06/21(日) 14:15:08 .net CP/Mのアプリは80桁欲しい。 ビルゲイツがV9938に80桁を求めたのもそれ。
124 :ナイコンさん :2020/07/15(水) 21:55:24 .net >>116 文豪の件は雑誌にもあったはず、プロセッサかザBasic。 本当かな?とショップで文豪の特殊キー押したりしたあの頃。
125 :ナイコンさん :2020/07/18(土) 15:36:10 .net 雑誌THE BASICで知った。 文豪mini5は何かのキーを押しながら電源入れると CP/Mが立ちあがったと記憶。 FDDは3.5インチ2DD 640KB 8セクタ/トラック。だったと思う。 80/88用CP/MとMBASIC.COMの正規品を購入して CP/Mが立ち上がってる文豪にCOMファイルをシリアル転送。 ただし、エディターは行数変更の必要あり、フォーマットは 文豪の文書ディスクフォーマット機能を使ったかな。 旅行先に持って行ったりした。まだ、ノートPCが高価な頃。
126 :ナイコンさん :2020/10/06(火) 22:09:09.51 .net 640KB(2DD)のメディアで80トラックだとすると1セクタが512バイトの計算になるかな?
127 :ナイコンさん :2020/10/06(火) 22:43:03.52 .net 9セクタで720kBにはできなかったのかな
128 :ナイコンさん :2020/10/07(水) 02:31:32.36 .net その種の源流辿りということなら、CP/MはDECのPDP-8,PDP11というミニコン系列の OSのRT-11、OS/8、TOPS-10あたりまで辿れる。PIPコマンドや論理デバイスの扱い などモロにDEC系。というのもキルダールがDEC使いでCP/Mの記述言語PL/MはPDP-8上で 8080の命令語エミュレータを書いた上で開発されたという経緯。依頼主はインテル。さらに 聞くところによれば日立がインテルからPL/Mのソースライセンスを買ってPL/M68Kを ポーティングしそれを元にDRIがPL/M68Kが。ということらしい。
129 :ナイコンさん :2020/10/07(水) 02:35:02.40 .net 亀レスぷw >>13
130 :ナイコンさん :2020/10/07(水) 10:42:34.97 .net 英語圏ではビジネスアプリも売れたからCP/Mマシンの需要が高かったけど、日本だと開発ツールくらいしか需要がなかった。
131 :ナイコンさん :2020/10/07(水) 13:56:24.37 .net >>130 えっ!? ソフトはハードの付録でしょ?
132 :ナイコンさん :2020/10/07(水) 15:39:21.93 .net その思想で馬鹿売れしたのがオズボーン1
133 :ナイコンさん :2020/10/13(火) 23:02:02.45 .net ちょっと気が付いたんだが CP/Mで扱えるディスクの最大サイズが8MB、 今Windows10が扱えるパーティションの最小サイズが8MB なにか関連でもあったりするかなぁ?
134 :ナイコンさん :2020/10/22(木) 17:07:26.32 .net 特にないと思うけどCP/Mのドライブをwin10で読めるなら面白いかもね Wordstarファイルのサルベージが出来るとか
135 :ナイコンさん :2020/10/30(金) 19:05:43.06 .net 叔父が入院したときにもう使わなくなるだろうからと CP/Mplus一式をくれたんだ… もうワードマスター付きだったから ヒーロー?
136 :ナイコンさん :2020/11/03(火) 00:20:58.57 .net >>132 一応OSBORNEについて調べてみたよ。ようつべ?に 8bit guysシリーズのビデオで〜Demonstration and Reviewというのがあり、ひととおり動いているところが見れる。 CP/Mは60Kのシステムらしい。”1”の後継機も2種類紹介されていた・・・
137 :ナイコンさん :2020/11/05(木) 01:24:17.91 .net CP/M-86 2D のシステムFD を CP/M-86 2HD のシステムFD に コンバートするには如何やったら 正解なの?
138 :ナイコンさん :2020/11/05(木) 06:29:27.72 .net CP/Mは88/C1で2HDのFDDやHDD起動できたんですかね?
139 :ナイコンさん :2020/12/11(金) 07:24:55.46 .net X1のCP/Mはエスケイプシーケンスで画面制御できるみたいだが、PC88用は動かない?
140 :ナイコンさん :2020/12/19(土) 09:29:51.23 .net CP/Mのbdosコール使ってワイルドカードでのファイル探索のプログラムを作ってみたいのだが、たかがDIRと同じ機能を実現しようとして難儀してます。 コールの順番とかあるのでしょうか。 エロい人教えてください。
141 :ナイコンさん :2020/12/19(土) 15:12:44.55 .net CCPソースのDIRコマンドのところ見たらそのものずばりのような気が 2.2のOS2CCP.ASMのdirect:のラベルのところ見たら、なんやかやサブルーチンで最終的に jmp bdosになる
142 :ナイコンさん :2020/12/19(土) 19:08:51.05 .net やはりそれしかないようですね。 調べてみます。
143 :ナイコンさん :2020/12/19(土) 20:07:14.82 .net >>141 FCBが36バイト単位だと勘違いしてました。 C言語のヘッダー見て勘違いしてました。 BDOSコールしたバッファみたら32バイト単位でした。 お騒がせしました。
144 :ナイコンさん :2021/01/10(日) 07:26:32.21 .net CP/Mでプログラム終了時にCCP読みに行くのを止める方法ありますかね。 Warmbootに飛ばしても読み出すみたいなので。
145 :ナイコンさん :2021/01/11(月) 11:04:23.52 .net >>144 Worm bootに飛ばすとCCPをリロードするのは定番ですね (^^ 5番のBDOSコール実行で実現できます。 LD C,0 JP 0005H
146 :ナイコンさん :2021/01/11(月) 12:45:27.45 .net >>145 コールドブートの方は試してませんでした。 やってみまーす。
147 :ナイコンさん :2021/01/11(月) 17:35:13.42 .net >>144 スタックを少ししか使わないアプリなら RETで戻れるんじゃなかったっけ? SPを自領域に設定する場合は、 CPPのSP値を覚えておいてアプリ終了直前にそのSPに戻してからRET
148 :ナイコンさん :2021/01/12(火) 21:04:18.81 .net CP/M-80のHDD限界は、128Byte管理で、65536管理の8MByteになるのでしょうか?
149 :ナイコンさん :2021/01/12(火) 21:11:46.44 .net >5番のBDOSコール実行で実現できます。 すまん、まちがったので念のため。 Cに0を設定しているので「0番のBDOSコール」と書くべきだった。 >>147 なるほどたしかに、C9(RET)のコードで始まる.COMを作成した場合、 実行するとそのままプロンプトが出る。
150 :ナイコンさん :2021/01/17(日) 12:34:04.97 .net >>148 自分の考え方(論)です。 DPB(Disk Parameter Block)というメディア・ドライブの仕様より トラック、セクタの数がいずれも1バイトで示されているから。 セクタのサイズ(論理)は128バイト固定。 それぞれ最大値を入れて計算してみてね。
151 :ナイコンさん :2021/02/10(水) 12:25:08.95 .net 最近思うのだが、16ビットのCP/M-86がMS-DOSの前に破れ去ったのは ゲーリー・キルドールの「進取の無さ」が原因かなと思う。 CP/M-80で一応成功したので、あくせくしなくたって一生遊んで暮らせる 金が手に入ったのだから。 CP/M の構造的な改革に手を出す気なんて無かったんだろうな。
152 :ナイコンさん :2021/02/10(水) 23:05:59.24 .net コンカレントCP/Mは先進的だったんだぜ
153 :ナイコンさん :2021/02/11(木) 00:32:11.29 .net CP/M-86でも、ディスク入れ替えたら^cは必要だったの?
154 :ナイコンさん :2021/02/11(木) 00:58:51.34 .net >>153 ただね、CP/M の あのディレクトリ・ファイル構造が如何にも 前時代的だったというか、一過性の造りとしか思えない...
155 :ナイコンさん :2021/02/11(木) 01:00:45.20 .net すまん、154は、>>152 宛てだった
156 :ナイコンさん :2021/02/11(木) 01:16:08.60 .net ディレクトリエントリ内にFATに相当するテーブルも持っていて、それが16バイトしかないから、 16クラスタを超えたら同じ名前のディレクトリエントリをもう1つ作って続番を増やすってやつね。
157 :ナイコンさん :2021/02/11(木) 18:29:54.39 .net >>151 奥さんの爪が長かったから、と聞いておる
158 :ナイコンさん :2021/04/18(日) 12:49:11.57 .net CP/Mは値段がねぇ シャープランゲージシリーズが出るまでは、PCメーカーからは安価なのがなかった。 サードパーティ製は知らん。
159 :ナイコンさん :2021/04/21(水) 00:37:33.68 .net 当時中学生〜高校生でとにかくカネが無かったので レンタルソフト屋でコピーして使ってた… レンタル屋のデモ機でメディアコンバートまでして持ってくるという図々しさ クラスの奴らには、ただでさえ乏しい小遣いでゲームをコピーしてこない「使えない奴」呼ばわりまでされる始末
160 :ナイコンさん :2021/04/24(土) 20:35:53.16 .net PC買い替えたとき友人からコピーソフト入カセットテープもらっただーよ。 反射神経ゼロなんで遊べなかったが(´・ω・`)
161 :ナイコンさん :2021/04/24(土) 20:38:34.98 .net そういえばCP/Mってカセットテープをストレージに使えたっけ? 全然記憶にない(汗;
162 :ナイコンさん :2021/04/27(火) 23:04:26.76 .net EPSONならそんな仕様だったか FM-8,7系はROMのBIOS解析するとその機能があった記憶が PC系は全部自己開発だろ
163 :ナイコンさん :2021/05/08(土) 09:02:55.21 .net >>161 X1のCP/MならCMT.COMってのがあり、 CP/MとBASIC間でデータ交換ができたんだ・・・
164 :ナイコンさん :2021/05/08(土) 13:42:44.15 .net >>161 CP/M自体のサポートは無いけど遊びでディジタルカセット(TEAC MT-2)をドライブに仕立てたことがあった FD的に「フォーマット」してトラック・セクタに対応したブロックにR/Wする カセット片面で100KBくらいしか入らなかったかな ディレクトリ管理領域とデータ領域とが何十メートルも離れてたりw (FDでは数センチ程度)
165 :ナイコンさん :2021/05/26(水) 19:05:23.81 .net カセットテープにはMOUNT REMOVEがいるなんて完全に忘れていたが考えてみれば当然か 昔の人はすごいと思う
166 :ナイコンさん :2021/08/12(木) 16:48:20.89 .net https://eylenburg.github.io/pics/Eylenburg_Operating_System_Timeline_Family_Tree.svg 今のwindowsがOS/2の系統だってしらなかった
167 :ナイコンさん :2021/08/12(木) 22:21:35.22 .net しれっとネ申が下りててワラタ >164
168 :ナイコンさん :2021/09/27(月) 07:02:20.59 .net VMwareでCP/M-86が動くね ASM86も入ってるのでアセンブラプログラミングでもきるよ ttp://www.z80.eu/blog/index.php?entry=entry120807-180000 ttp://www.z80.eu/downloads/cpm86fl2.zip
169 :ナイコンさん :2021/09/27(月) 08:47:58.30 .net iPadでエミュで610円はお高いカモだが。まあ全部入り簡便なので。 iAltairHD pretends to be a MITS Altair 8800 computer and gives you a glimpse how old operating systems like CP/M 2 have felt. It is fully loaded with software but please note that the system is completely self contained and this means that you cannot remotely add any code. If you want to play a classic text based adventure game such as Zork, talk to Eliza, play Startrek, do a little bit of WordStar or create a little program in Basic or TurboPascal, iAltairHD is for you. The iAltairHD computer supports - 8080, Z80 and 8086 CPU - Basic VT100 terminal emulation for full screen editors and games - CPU speed throttling for classic terminal games - Dropbox integration for disk backup The following software is included: - Altair Basic (4k and 8k) and Altair DOS - CP/M 2 with Basic, Pascal MT+, Prolog, TurboPascal, WordStar, VEDIT screen editor, Multiplan, dBASE II, a collection of classic Basic games and text based adventures - CP/M 3 with the possibility to exchange data between CP/M 2 and CP/M 3 - CP/M 86 with VEDIT and Pascal MT+ 86 - MS-DOS 1.25 with Basic-86 and Perfect Writer https://apps.apple.com/jp/app/ialtairhd/id413875670
170 :ナイコンさん :2021/09/27(月) 18:19:54.04 .net >>168 のCP/M-86でAztec C 3.2dが走ったよ ダウンロードファイル https://pastebin.com/TeeWWEfs cpm86fl2.zipのfloppy.flpでVMwareで起動できます vmwareイメージからcp/m-86イメージに変換 cpm86cnv blank_disk_vmware01.flp blank_disk_cpm01.flp vmw-to-cpmt cp/m-86イメージからvmwareイメージに変換 cpm86cnv blank_disk_cpm01.flp blank_disk_vmware01.flp cpmt-to-vmw cp/m-86のイメージにバイナリファイルをコピー cpmcp -f cpm86-144feat convert_disk_cpm01.flp cc.cmd 0:cc.cmd cp/m-86のイメージにテキストファイルをコピー(改行文字をCRLFにしてから変換する) cpmcp -t -f cpm86-144feat convert_disk_cpm01.flp hogehoge.c 0:hogehoge.c Aztec Cのイメージディスク作成方法 cpm86fl2.zipの中のfloppy.flpをコピーして消せるファイルはすべて消してbland_disk_vmware.flpを作りました floppy.flpの中のファイルを消さないと容量的に厳しいようでイメージの中のファイルが壊れました こんな感じでイメージファイルを作りました https://pastebin.com/uDPv0N43 作成されたaztec_c.flpがVMware用のAztec Cのイメージファイルです 作成したaztec_c.cpm.flp、aztec_c.flpは容量的にこれ以上ファイルを詰め込むと イメージの変換時に壊れるようなのでHDDにコピーするなどして使ってください
171 :ナイコンさん :2021/09/27(月) 18:20:56.11 .net 続き VMwareでCP/M-86でHDDを使う方法 1.仮想マシン起動時にF2を押してVMWareのBIOSを起動する 2.上のメニューのMain画面でPrimary Masterを選択してEnter 3.Type:をUserにする 4.Cylinders:を615にする 5.Heads:を4にする 6.Sectors:を17にする 7.Maximum Capacityが21MBになってることを確認する 8.Multi-Sector Transfers:を16 Sectorsにする 9.LBA Mode Control:をDisabledにする 10.32bit I/O:をDisabledにする 11.Transfer Mode:をStandardにする 12.ESCを押してPrimary Master画面を抜ける 13.F10を押すか上のメニューのEXITにカーソルを合わせてExit Saving Changesを選択してEnter 14.Aドライブにcpm86fl2.zipの中のfloppy.flpを入れてフロッピーから起動する 15.B:ドライブがHDDになっていればOK b: stat dsk: で確認できる pip b:=a:*.* でAドライブの中のファイルをすべてBドライブにコピーできる
172 :ナイコンさん :2021/09/27(月) 18:23:01.41 .net 続き コンパイル方法 cc exmpl.c ln exmpl.o c.lib アセンブラ出力が必要な場合 cc -a exmpl.c as exmpl.asm ln exmpl.o c.lib 浮動小数点演算を使う場合はm.libもリンクする cc exmpl.c ln exmpl.o m.lib c.lib インクルードファイルのドライブを指定する場合は-iオプションでドライブを指定する (例ではBドライブがインクルードファイルの置かれてる場所) cc -ib: exmpl.c ln exmpl.o m.lib c.lib
173 :ナイコンさん :2021/09/27(月) 18:47:36.09 .net 続き 書き忘れましたがHDDのフォーマットはHDMAINT.CMDで行います 1.コマンドラインから HDMAINT と入力して起動します 2.F1を押します 3.F6を押します 4.F10を押します 5.Enter partition size:と聞かれるので再度、F10を押します 6.F2を押して2048を選択し、F4を押してwillを選択してF10を押します 7.Creation of CP/M volume completeと出たらF9を押します 8.cpm86fl2.zipの中のfloppy.flpをAドライブに入れてF9を押して再起動します コマンドラインで a: a:stat dsk: と入力して認識してるか確認してください a:pip b:=a:*.* でAドライブの中のファイルをすべてBドライブにコピーできます
174 :ナイコンさん :2021/09/27(月) 18:49:27.70 .net 確認はコマンドラインで b: a:stat dsk: でした
175 :ナイコンさん :2021/09/27(月) 19:08:51.88 .net cpmcp.exeを他のの場所にをコピーするときは 同じ場所にdiskdefsも一緒にコピーしてください
176 :ナイコンさん :2021/09/27(月) 19:13:50.47 .net CP/M-86の使い方はこれを見てください ttp://www.cpm.z80.de/randyfiles/DRI/CPM-86_Users_Guide.pdf
177 :ナイコンさん :2021/09/27(月) 19:24:37.14 .net 簡単な使い方はこんな感じです eraやpipはMS-DOSと同じようにワイルドカードが使えます era hogehoge.txt hogehoge.txtを削除 pip b:hagehage=a:hogehoge.txt Aドライブのhogehoge.txtをBドライブにhagehage.txtという名前でコピー pip b:=a:hogehoge.txt Aドライブのhogehoge.txtをBドライブにコピー type hogehoge.txt hogehoge.txtを画面に出力 submit hoge.sub hoge.subという名前のバッチファイルを実行する 画面出力はCTRL+Sで止まります再開もCTRL+Sです
178 :ナイコンさん :2021/09/27(月) 19:32:49.64 .net 最後にフロッピーディスクを入れ替えたらCTRL+Cを押して ディレクトリ情報の更新を必ずしてください
179 :ナイコンさん :2021/09/27(月) 19:50:45.34 .net CP/M86は1981年の暮れに、DRIのオリジナルターゲットの構成で走らせた。 インテル純正のマルチバス基板 iSBC86/12A(cpu+64KB)+iSBC064(64kb) iSBC208(FDC)。CP/M86は青山の青学会館近くのマンションの一室に オフィスを開設したばかりのMSA(マイクロソフトアソシエイツ)で入手。 空便で今初便が届いたよと連絡を受けて青山に取りに行った。自作PCのように 全てインテル純正の基板と筐体、電源を組み上げて、8インチFDDを接続。 空輸便のオリジナルフロッピー入れて起動。改造無し。一発起動成功でした。 CP/M機を製造販売していた三鷹の某D社の課長に電話入れたら、ウチは もうすでに動いていますよ。DRIとは直接取引していますから。ってね マウント取られちゃったよw この世にIBM-PCも9801も存在していなかった1981年。大昔の話ですなあ。
180 :ナイコンさん :2021/09/27(月) 20:56:33.10 .net cpm86cnv.zipの中のCPM86CNV.Cのビルドは Visual Studio Community 2019で行う場合は Visual Studio Community 2019のインストールで 「C++によるデスクトップ環境」を選択してインストールします インストールしたらWindowsを一度再起動します 再起動したら、Developer Command Prompt for VS 2019を起動します cdコマンドでCPM86CNV.Cを保存したディレクトリにカレントディレクトリを移動します 例えばc:\Users\username1\DocumentsにCPM86CNV.Cを保存した場合は cd c:\Users\username1\Documents になります カレントディレクトリを移動したら cl cpm86cnv.c と入力すればcpm86cmv.exeができます Visual Studio Community 2019のインストールは https://www.visualstudio.com/ja/dev-essentials/ にアクセスして「今すぐ参加またはアクセス」をクリックします (Microsoftアカウントが必要になります)
181 :ナイコンさん :2021/09/27(月) 21:38:02.73 .net 簡単な使い方と簡単なアセンブラのプログラミングと ラインエディタのEDの使い方が載ってます CP/M−86について ttps://libir.josai.ac.jp/il/user_contents/02/G0000284repository/pdf/JOS-KJ00000589197.pdf
182 :ナイコンさん :2021/09/27(月) 23:33:49.53 .net CP/M86のエディタって相変わらずCP式のやつだったんだ
183 :ナイコンさん :2021/09/27(月) 23:41:41.68 .net CP/M86やCP/M68Kでもテキストファイル末尾に0x1aは必要だったんですか?
184 :ナイコンさん :2021/09/30(木) 07:06:19.30 .net http://www.brackeen.com/vga/ ここにVGAの320x200の256色表示のC言語でのプログラミングの方法が載ってるね CP/M-86版のAztec C 3.2d用にとりあえず、pixel.cを移植してみました CP/M-86版のAztec C 3.2dはメモリモデルにsmallモデルしか使えないようなので VGAのメモリアクセスにはAztec C 3.2dの組み込み関数のpokebを使ってます CP/M-86 Aztec C 3.2d VGA TEST pixel.c https://pastebin.com/iNnP3t6P コンパイル方法は cc pixel.c ln pixel.o m.lib c.lib です Bドライブをカレントディレクトリにしてコンパイルする時に インクルードファイルがBドライブにある場合は cc -ib: pixel.c ln pixel.o m.lib c.lib になります
185 :ナイコンさん :2021/09/30(木) 22:33:39.13 .net >>184 にアップしたプログラムで時間計測の部分にミスがありました 修正版をアップします CP/M-86 Aztec C 3.2d VGA TEST pixel.c https://pastebin.com/JV0sDqR2 また、lines.cも移植してみました CP/M-86 Aztec C 3.2d VGA TEST lines.c https://pastebin.com/ShmSSnec コンパイル方法は cc lines.c ln lines.o m.lib c.lib です Bドライブをカレントディレクトリにしてコンパイルする時に インクルードファイルがBドライブにある場合は cc -ib: lines.c ln lines.o m.lib c.lib になります
186 :ナイコンさん :2021/10/01(金) 07:50:00.65 .net 上のCP/M-86でAztec C Ver 3.2dを使う方法がわかりにくいと思われるので CP/M-86でAztec C Ver 3.2dを使う方法をまとめてみました VMware PlayerのCP/M-86上でAztec C Ver3.2dを使う方法 https://pastebin.com/0zpmybh7
187 :ナイコンさん :2021/10/02(土) 12:23:35.35 .net こちらのVGAの320x200の256色画面のC言語によるプログラミングのサンプルプログラムを CP/M-86のAztec C 3.2dに移植してみました 256-Color VGA Programming in C http://www.brackeen.com/vga/ ここのこれらのプログラムを移植しました pixel.c lines.c rect.c circle.c bitmap.c palette.c unchain.c modes.c mouse.cはマウスが使えないので移植してません 5chはたくさんのURLを一度に貼れないのでこちらに各ソースコードのURLを貼ってあります https://pastebin.com/tGGgYmGQ
188 :ナイコンさん :2021/10/02(土) 12:40:42.01 .net 続き コンパイル方法は8つのプログラムどれも一緒です コンパイル方法は cc pixel.c ln pixel.o m.lib c.lib です Bドライブをカレントディレクトリにしてコンパイルする時に インクルードファイルがBドライブにある場合はccで-iオプションで-ib:のように指定します cc -ib: pixel.c ln pixel.o m.lib c.lib になります
189 :ナイコンさん :2021/10/04(月) 21:05:44.10 .net PC-9801Fを買ったとき、N88diskBASIC環境でアセンブラがなかったから CP/M86のディスクだけ買ってきた。 (ディスク1万円、マニュアル1.5万円でNECは売ってたんだよね) で、CP/M86のアセンブラ使ってプログラム作っては、DiskBasic側で読み込んで BASIC+機械語の形で動かしてた。
190 :ナイコンさん :2022/05/14(土) 10:57:13.77 .net ロマンティックが止まらない?
191 :ナイコンさん :2023/01/04(水) 00:52:10.32 .net CP/M86が動くx86系CPUって、どれが最後なんだろ?
192 :ナイコンさん :2023/01/04(水) 19:51:19.59 .net リアルモードがある奴ならCP/M86は動きそうな気はするけどFD付かないマザボでも動くんだろうか?
193 :ナイコンさん :2023/01/05(木) 07:23:18.56 .net vmware上でなら、ryzenでも動いた。実機では試してないけど。
194 :ナイコンさん :2023/01/06(金) 14:18:16.16 .net どのCPUでもMS-DOSは動くのかな?
195 :ナイコンさん :2023/01/10(火) 08:50:46.09 .net リヤルモードが切り捨てられない限り
196 :ナイコンさん :2023/01/10(火) 11:10:40.21 .net uefiのみになってBIOS互換モード廃止されたM/BならCPU自体は対応できても起動できなくなるのでは?
197 :ナイコンさん :2023/01/10(火) 15:50:35.72 .net いちおうBIOS対応してても動作が酷くて実用にならないようなのもあるしな
198 :ナイコンさん :2023/01/11(水) 10:37:50.21 .net MS-DOSにはさすがに自己書き換えコードは入ってないかな?
199 :ナイコンさん :2023/01/11(水) 13:44:24.90 .net どうだろうね。masmの教科書で、任意のソフト割り込みをかけるマクロがint21→バイナリでcd 21だけど、この21を書き換えることで任意の割り込みをかけるようなマクロの記載があったから、そのまま使っていれば自己書き換えするはず
200 :ナイコンさん :2023/05/09(火) 12:04:54.52 .net ひさびさage
201 :ナイコンさん :2023/05/11(木) 11:49:41.10 .net >>199 マクロならコンパイルした後は変わらないのでは?
202 :199 :2023/05/11(木) 12:49:48.03 .net Cのマクロならね。 masmだからそのまま展開されます。
203 :ナイコンさん :2023/05/11(木) 13:44:07.26 .net ソースを書き換えるマクロじゃなくてコードを書き換えるマクロが展開されるならCでもアセンブラでもコード書き換えは出来るか
204 :ナイコンさん :2023/05/11(木) 21:27:51.90 .net コードセグメントのアドレスさえ手に入れられる言語で、8086のようにコードセグメントでも書き込みができるCPUなら
205 :ナイコンさん :2023/05/12(金) 10:30:50.83 .net ジャンプテーブルとか動的に生成したりしたよな
206 :ナイコンさん :2023/09/06(水) 10:41:43.22 ID:kiI4WzO5e 日本国民は国家の存亡に関わる陰謀に立ち向かわねは゛なりません.曰本国民の若者を始め武器を持って戦える全ての人は、ためらわずこの義務 を果たしてくた゛さい、力による一方的な現状変更によって滑走路にクソ航空機にと倍増させて都心まで数珠つなぎで鉄道の30倍以上もの莫大 な温室効果ガスまき散らして気候変動させて海水温上昇させてかつてない量の水蒸氣を曰本列島に供給させて洪水に土砂崩れに暴風にと住民の 生命に財産に地球にと破壊することて゛私腹を肥やし続ける世界最悪の殺人テロ組織公明党国土破壞省の陰謀から國を守って國民としての名誉を 得るのです。山口那津男は議員報酬という名目で毎年国民から2000万以上もの金銭を強盗してるし強盗殺人の首魁齋藤鉄夫なんか蓄財3億 円を超えてるわけた゛が、欧州みたいに他人の権利を強奪して私腹を肥やすだけの存在である恥知らず犬コロ公務員と四六時中殺し合ってる社会 を民主主義というんだぞ、マソ゛体質の西曰本被害者とかいつまでモクト ─だの無意味なバカ晒し続けてんた゛か.この私利私欲な動機に基づいた 行為を通じて人の命を非常なまでに軽視するテ口政府には物理的反撃なくしてお前らの生命と財産を守るのは不可能だといい加減理解しよう! (羽田)Τtps://www.call4.jp/info.Php?tУPе=iΤems&id=I0000062 , TТps://haneda-Ρroject.jimdofreе.com/ (成田)ttps://n-souonhigaisosyoudan.amebaownd.сom/ (テロ組織)TtPs://i.imgur.com/hnli1ga.jРeg
207 :ナイコンさん :2023/10/18(水) 13:11:29.02 .net わかんねぇわかんねぇって思いながら、ずっと俺のこと考えてな
208 :ナイコンさん :2023/10/19(木) 10:35:26.01 .net 5年で206書き込みか。
209 :ナイコンさん :2023/11/14(火) 20:19:14.86 .net ・CP/M68Kを98に移植する。I/O雑誌 工学社 1986年8月号 (234ページ参照) ------------------------------------------------------------------ https://archive.org/details/Io19868/page/n235/mode/2up ------------------------------------------------------------------ ハード構成: PC-9801本体 + PC-9801-16(68000ポード) + PC-9801-17(68000専用メモリポード) ソフト構成: CP/M-86(OS) + CPM400.SR など ・CP/M-68K バージョン 1.2 バイナリファイル ------------------------------------------------------------------ http://www.cpm.z80.de/download/68kv1_2.zip ------------------------------------------------------------------ 「68kv1_2.zip」を解凍し、「DISK」フォルダの中にある「CPM400.SR」「CPMLIB」「LO68.REL」 「RELOC.REL」ファイルが既に入っています。
210 :ナイコンさん :2023/11/14(火) 20:21:18.68 .net バイナリエディタで「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 ------------------------------------------------------------------ ※ PC-9801-16(68000ポード)が無くても「CPM400.SRO」ファイル出力可能です。 [2]「L68K.CMD」CMDベッターファイル内容は次のとおり。 ------------------------------------------------------------------ 0000 01 31 00 00 00 31 00 00 ・・・・・・・・・00 0010 00 00 00 00 00 00 00 00 ・・・・・・・・・00 0180 BB CA 02 E8 1F 00 B8 00 ・・・・・・・・・41 ------------------------------------------------------------------ [3]「HI68.CMD」CMDベッターファイル内容は次のとおり。 ------------------------------------------------------------------ 0000 01 34 00 00 00 34 00 00 ・・・・・・・・・00 0010 00 00 00 00 00 00 00 00 ・・・・・・・・・00 0180 BB E5 02 E8 0E 00 B8 00 ・・・・・・・・・30 ------------------------------------------------------------------
211 :ナイコンさん :2023/11/14(火) 20:24:48.14 .net 「SREAD.CMD」「L68K.CMD」「HI68.CMD」バイナリファイルを編集した後、 できれば、MS-DOS上で逆アセンブルして、「CSEG」「ORG 100H」を追加し、 プログラムを編集してからCP/M-86上でASM86コマンドでアセンブルして、 GENCMDコマンドで「CMD」実行形式ブログラムを出力しておけば良いです。 「SREAD.CMD」バイナリファイルの中に一部の逆アセンブルできない部分がありますが、 しかたなく、DW命令でバイナリデータ([例] DW 2EA3H)を直接編集しておくと良いです。 GENCMDコマンドで「CMD」実行形式ブログラムを出力した後、ちょっと面倒ですが、 バイナリエディタで「A3 2E」<->「2E A3」を逆変換して修正する必要があります。 それは2バイトのチェックサム値っぽいではないか?と推測されますが。 ・バイナリエディタ MEDIT ------------------------------------------------------------------ https://www.vector.co.jp/soft/dos/util/se020725.html ------------------------------------------------------------------ ・マルチプル機械語エディター EDIX (チェックサム機能付き) ------------------------------------------------------------------ https://www.vector.co.jp/soft/dos/util/se000796.html ------------------------------------------------------------------
212 :ナイコンさん :2023/11/14(火) 22:06:06.55 .net 今どきPC-9801-16なんて誰も持ってないw
213 :ナイコンさん :2023/11/15(水) 03:10:49.88 .net PC-9801用で68000ボードっていうと勝山システムのKSB-2が圧倒的に 安かったからな CPU乗っ取り形じゃなくてI/Oや表示は本体のCPUにやらせてCP/M-86と CP/M-68Kが98側とボード側で同時に動く変態ボードだった。
214 :ナイコンさん :2023/11/15(水) 20:08:18.81 .net L68K.CMD からL68D.CMD(デバッグ用)にコピーして、 0239アドレスに下記の5バイト分を書き換える。 ------------------------------ 0239 F4 E9 FC FF FA 0239 B1 00 CD E0 00 ------------------------------ HI68.CMDからHI68D.CMD(デバッグ用)にコピーして、 0254アドレスに下記の5バイト分を書き換える。 ------------------------------ 0254 F4 E9 FC FF FA 0254 B1 00 CD E0 00 ------------------------------ CP/M-68Kが起動できない場合、上記のデバッグプログラムを作成しておけば、 デバッグプログラムを実行後、DDT86コマンドでメモリダンプを参照できます。 A>DDT86 -D1000:0400 (CPM400.SROメモリダンプが表示されるはず) -D1000:6000 (BIOS68Kメモリダンプが表示されるはず)
215 :ナイコンさん :2023/11/18(土) 16:12:28.05 .net 68000ボードの0番地のアドレス設定値(スイッチ2G2)と クロック周波数(スイッチ2G3)を取得するプログラムを 作成してみました。 ------------------------------------------ BDOS EQU 0E0h CR EQU 0DH LF EQU 0AH cseg org 100h in al,9Fh and ax,0Fh cmp al,0Ch jnz LBL1 mov cl,9 mov dx,offset OK1 int BDOS jmp LBL5 LBL1: cmp al,0Dh jnz LBL2 mov cl,9 mov dx,offset OK2 int BDOS jmp LBL5
216 :ナイコンさん :2023/11/18(土) 16:13:36.28 .net LBL2: cmp al,0Eh jnz LBL3 mov cl,9 mov dx,offset OK3 int BDOS jmp LBL5 LBL3: cmp al,0Fh jnz LBL4 mov cl,9 mov dx,offset OK4 int BDOS jmp LBL5 LBL4: mov cl,9 mov dx,offset NG int BDOS LBL5: mov cl,00h int BDOS
217 :ナイコンさん :2023/11/18(土) 16:14:32.49 .net 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!!' db CR,LF,'$' OK3 db CR,LF db 'PC-9801-16 Board 8MHz + 10000h SET OK!!' db CR,LF,'$' OK4 db CR,LF db 'PC-9801-16 Board 8MHz + 20000h SET OK!!' db CR,LF,'$' NG db CR,LF db 'PC-9801-16 Board no Found!!' db CR,LF,'$' end ------------------------------------------
218 :ナイコンさん :2023/11/19(日) 14:05:25.33 .net 現時点では、CP/M-68Kが起動できない原因はまだわかりませんが、 下記のように、スタートアドレス設定が必要とか、スタックをセットし、 INITへジャンプする必要があると思いますけど。 L68K,HI68プログラム(後半)にスタックプログラム(PUSH,POP,IRETなど)が既に入っていますが、 何も実行されない状態で、CP/M-68Kが起動できないみたいですが。 例えば、L68KのCMDベッターにスタートアドレスとか、04のスタックアドレスをセットするとか。 もしくはSR400.MAPファイルを正しく編集するとか。 逆アセンブラで(L68K),HI68プログラムに6F01,(6F06)アドレスが記載されてあり、 INITへジャンプするための作業領域?とか、チェックサム値?をセットするとか? ●SREAD 「スタートアドレスとチェックサムはすべて省略しています」と記載されてありますけど、 スタートアドレスをどのように設定するのがよくわからず、 CMDベッターにスタートアドレスを入れるとか、まだ不明ですが。
219 :ナイコンさん :2023/11/19(日) 14:06:57.44 .net [参考文献] https://archive.org/details/Io19837/page/n321/mode/2up [表1 CP/M-68K 移植手順] (I/O雑誌 1983年7月号 319ページ参照) -------------------------------------------------------------------------------- ?他のシステムもしくは68KモニタなどでBIOSを作成する。 ?Sフォーマット・ローダーを作成し、SR400.SYSまたはSR128K.SYSファイルを メモリにロードする(BDOSとCCPのみのファイル)。 ??で作成したBIOSをロードする。 ??でロードしたプログラムの頭($400,$15000)から実行する(スタックをセットし、INITへジャンプする)。 注)BIOS作成時のCP/Mのエントリ・ポイントの変更点 ------------------------------------------------- INIT:SR400 $5F96 ,SR128K $19B96 SR400 $4F4 ,SR128K $150F4 ------------------------------------------------- ●CCP,BDOS,BIOSはどこにあってもかまいません。 --------------------------------------------------------------------------------
220 :ナイコンさん :2023/11/19(日) 17:52:47.65 .net [参考文献] プロセッサ 1985年11月号 技術評論社(54〜64ページ参照) https://www.suruga-ya.jp/product/detail/ZSARU6973 その内容にPC-9801-16 ボードの機能概要とMS-DOS上で動作する サポートソフト(NEC製)の概要が記載されてあります。 PC-9801-16 メモリマップとメモリ動作概要とIN,OUT命令(I/Oポート)しかなく、 サポートソフトの概要を読んでも使いものになりません。
221 :ナイコンさん :2023/11/19(日) 19:36:33.88 .net おう、阪神が西武をこてんぱんにして日本一になった年だな
222 :ナイコンさん :2023/11/20(月) 08:05:52.44 .net ----------- : : CALL SUBR RET ----↓----- : : JMP SUBR ----↓----- : : SUBR: -----------
223 :ナイコンさん :2023/11/20(月) 20:42:20.37 .net ----------- : : CALL SUBR RET ----↓----- : : SUBR: ----↓----- : : JMP SUBR
224 :ナイコンさん :2023/11/25(土) 20:59:01.64 .net ・・・BIOSをCCPとBDOSに接ぎますが、このとき_ccpと_initの2つの アドレスだけはリンクしなければなりません。 リンカならすぐにできる、この作業も手で書き加えなければなりません。 SR400.SYSの$4F96は、4EF900000000になっています。 4EF9は絶対アドレス・ジャンプで、この次の部分を _initのアドレスに改めることによりリンクできます。 _ccpは$4F9Cなので、BIOS中の_ccpをこのアドレスにします。 BIOSとのリンクが終わったシステムは、CCPとBDOSの先頭アドレスから 実行を開始することにより、CP/M68Kが走り始めます。 このとき、ディスクが少し動いて何もメッセージもなく、 いきなり、A>のプロンプトが表われ、CP/M68Kが動きます。 このときからCP/M68Kの全ての機能が働きます。 とマイコンピュータNO.12 (徹底特殊 MC68000とCP/M68K)雑誌 (135ページ)に記載してありました。 CPM400.MAPの中身を覗いてみたら、 _ccp(4B8)と_init(6000)アドレスが入っていました。 ----------------------------------------------- _ccp 4B8 global text cpm 400 global text _bdos 4C6 global text _init 6000 equ global abs -----------------------------------------------
225 :ナイコンさん :2023/11/25(土) 21:01:43.45 .net DDT.68Kを起動してから「-R BIOS68K」を入力し、 BIOS68Kプログラムを逆アセンブラで覗いてみました。 ----------------------------------------------- movea.l #6F01,A1 : jmp $4B8 : movea.l #6F06,A0 : movea.l #6F80,A1 : movea.l #6F80,A2 ----------------------------------------------- 上記の6F01と6F06と4B8アドレスが見つかっており、 BIOS68Kプログラムを書き換える必要はないですが、 CP/M86のCMDヘッダ側(04)でスタック領域を確保しておかないと CP/M68Kが起動できないのではないかと思うけど?
226 :ナイコンさん :2023/11/26(日) 15:59:42.03 .net 例外(動作保証なし)ですが、「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 ------------------------------------------------------------------ 上記のアドレス0180ではなく、0080でした。半年前だけど、 DSEGセグメント(02)を用いて、プログラム実行を試してみました。
227 :ナイコンさん :2023/11/26(日) 21:03:14.76 .net 再度、BIOS68Kプログラムを逆アセンブラで覗いてみたら、 なぜ、stop命令が入っていたかわからないですが。 ---------------------------- move.b D0,$600000 stop #$2000 clr.l D0 ----------------------------
228 :ナイコンさん :2023/11/28(火) 21:53:53.94 .net BDOS機能の呼出しには68000の例外処理命令Trapを使用する。 68000は0番地から3FFFHまでの各4バイトには 255個の例外ベクターを持つ必要があります。 やはり、例外ベクター領域が何も入ってないと CP/M68Kが起動できないのではないかと思うけど。 https://ipsj.ixsq.nii.ac.jp/ej/index.php?action=pages_view_main&active_action=repository_action_common_download&item_id=25038&item_no=1&attribute_id=1&file_no=1&page_id=13&block_id=8
229 :ナイコンさん :2023/11/28(火) 22:43:59.30 .net >>224 上の方は_intって書いてあるね
230 :ナイコンさん :2023/11/29(水) 20:34:16.82 .net >>229 ありがとうございます。_intが既にわかっていたけど、 CP/M68K(英語版)の68ページを参照し、 _ccpが記載してあるけど、_intが見つからなかった。 http://www.bitsavers.org/pdf/digitalResearch/cpm-68k/CPM-68K_System_Guide_Jan83.pdf 166ページに前回(NO.11)の訂正と補足が記載してありますけど、 次回NO.13に訂正箇所が記載してあるかどうか確認すると良いですが。
231 :ナイコンさん :2023/11/30(木) 21:29:49.63 .net マイコンピュータNO.14 入門特集8086 アセンブリ・プログラミング103ページを参照し、 プログラム本体はコード領域に、メモリはデータ領域に 指定して用いましたが、さらにスタックを用いるときは、 それをスタック領域に、また繰り返し転送、比較を行うときには、 予備領域を用います。これらのいくつかの領域を用いるときは、 それぞれの区分名がどの領域に属するものであるかを、 すべてASSUME命令で指定しておきます。 例えば、CSEG、DSEG、SSEGをそれぞれコード、データ、 スタック領域に指定するには、 ASSUME CS:CSEG ASSUME DS:DSEG ASSUME SS:SSEG ASSUME ES:NOTHING のように書きます。
232 :ナイコンさん :2023/11/30(木) 21:36:39.99 .net 1つのASSUME命令の処理対象に、いくつかの領域指定を 同時に行うことができます。このときはそれらを ,(カンマ)で 区切って並べておきます。例えば、 上の例は、 ASSUME CS:CSEG , ASSUME DS:DSEG ASSUME SS:SSEG , ASSUME ES:NOTHING と書きます。
233 :ナイコンさん :2024/01/21(日) 19:38:09.52 .net >>213 あぁ勝山さん元気かなぁ?独特の雰囲気のエンジニアだった
234 :ナイコンさん :2024/03/28(木) 20:28:07.88 ID:LzwT+LAF8 税金泥棒た゛らけの日本の茶番政治家と違って日本に原爆落とした世界最惡のならず者國家の国会は政治やってるよな 何しろ『やんのかコラ』『よろこんで』「し゛ゃあ立てよ」『お前か゛立てよ」とか言い合ってるくらいだしな 岸田異次元増税憲法ガン無視地球破壞霸権主義経済音痴文雄にそのくらい言い放とうものならお前ら間違いなく投票するよな クヒ゛にされた税理士神田憲次財務副大臣は徴税システ厶ぶっ壊すために財務副大臣になったんた゛くらい言えは゛と゛んて゛ん返しだったろうに 天下り賄賂癒着して航空騒音による威力業務妨害まて゛してるだけの害蟲公務員に高額なタタ゛メシ食わしてやるデタラメ許してるせいで 賃金か゛上がらず物価上昇という白々しい結果になってんた゛から片っ端から税金という名目の強盗システ厶をぶっ壊してやんよとか 誰か言ってみせろっつのな,税金不払い運動とかやらないのは曰本くらいなものだから俺も俺もと汚職まみれの世界最惡の腐敗天國に なったわけだが税金滞納して督促くらってもと゛うということはないと税理士副大臣がハ゛ラしちまったし俺も俺もと誰も払わなくなれは゛いいよな (ref.) ttps://www.call4.jp/info.php?type=items&id=I0000062 ttps://haneda-project.jimdofree.com/ , ttps://flight-route.com/ ttps://n-souonhigaisosyoudan.amebaownd.com/
235 :ナイコンさん :2024/05/02(木) 02:42:18.31 .net 最近になってPlus初めて使った。 リブートなしってこんなに快適だったのかと
236 :ナイコンさん :2024/05/18(土) 16:52:05.91 .net https://archive.org/details/Io198610/page/n239/mode/2up I/O雑誌 1986年10月号239ページに 「86年8月号に掲載されたCP/M68Kを98に 移植するの記事中、BIOS.Oが抜けていました。 必要な方はI/O編集部まで書面にて連絡してください」 と記載されてありました。
64 KB
新着レスの表示
掲示板に戻る
全部
前100
次100
最新50
read.cgi ver.24052200
本文 スレッドタイトル 投稿者