HSPポータル
サイトマップ お問い合わせ


HSPTV!掲示板


未解決 解決 停止 削除要請

2007
0504
水野とても困難に思えるのですが...14解決


水野

リンク

2007/5/4(Fri) 19:37:00|NO.8030

HSPでOSを作る事はできますかな。
HLTなどI/O系の命令などが無いから
困難と思いますが...
OSという特異な環境ですので、DLLは除外として回答をよろしくおねがいします。

もしできないなら機械語コードを
コンパイル後のファイルに埋め込む命令を作れませんか?
もう、いっそのこと、インラインアセンブラを実装してください。
できないなら、coffやomfなどの指定をして
オブジェクトファイルを作成を出来る様に
してはくれませんか。こっちでリンクしますから。
半ば提案気味でしたが、質問を終わります。



この記事に返信する


a

リンク

2007/5/4(Fri) 20:39:13|NO.8032

自分が作れるんだべ?



S

リンク

2007/5/4(Fri) 20:49:00|NO.8033

>OSという特異な環境ですので、DLLは除外として回答をよろしくおねがいします。

 OSの何が特異か言ってみな、
そもそもOSはDLLで成り立ってるようなもんだろ。



a

リンク

2007/5/4(Fri) 20:49:49|NO.8034

あなたの書き込みはなんだかね、
・俺には書けないが、お前らの中でかけるやつ書いてみろ
・俺には書けるが、お前らには書けないだろう
どっちにも受け取れてちょっと不愉快。
半ば提案気味っていうか、最後完全に提案だよね?
いや、提案よりもっとひどいでしょ?とくに"こちらでリンクしますから"って言い方。
完全に見下してるよね?全然提案じゃないよね。"こっちでリンクするからオブジェクトファイルを吐き出せ"って聞こえるよ。
あなたがすごい技術持ってるのは話の内容でなんとなくわかるんだけど不愉快。

何?他のスレッドの悪態をここらへんで見返してやろうってこと?
ごめんねこんなこと書いちゃって。



f

リンク

2007/5/4(Fri) 21:22:36|NO.8035

まあ、とりあえず、
HSPはWINDOWSに依存してるから、HSPで普通に出来る実行ファイルでは無理と思うけど、
HSPでコンパイラを作れば、やって出来ない事は無いんじゃね?



水野

リンク

2007/5/5(Sat) 00:16:53|NO.8039

>aさん
自分でOS、作れますよ。(アセンブラを使う場面もありますが)
ただ、I/O関係が難しい...

>再びaさん
何でそうとりますか...
みなさんの返答を頂きたかったのに...
不愉快極まりないです。

>fさん
HSPでコンパイラを作るのは
ちょっとやった事が無いですね...



abo

リンク

2007/5/5(Sat) 06:07:23|NO.8042

>ただ、I/O関係が難しい...
水野さんのOSがどのプラットホームで動作させたいのか分りませんが、
Windows上(DLL無し)でI/O系の命令をすることは出来ます。
但し、WindowsNT系はデバイスドライバ(ioscm.sysなど)が必要です。

Windows9x系の場合は

#module #defcfunc io_inp int adr prm=adr : res=callfunc( prm, varptr(fnIo_inp9x), 1) : return res #defcfunc io_inpw int adr prm=adr : res=callfunc( prm, varptr(fnIo_inpw9x), 1) : return res #defcfunc io_inpd int adr prm=adr : res=callfunc( prm, varptr(fnIo_inpd9x), 1) : return res #deffunc io_out int adr, int dt prm=adr,dt : res=callfunc( prm, varptr(fnIo_out9x), 2 ) : return #deffunc io_outw int adr, int dt prm=adr,dt : res=callfunc( prm, varptr(fnIo_outw9x), 2 ) : return #deffunc io_outd int adr, int dt prm=adr,dt : res=callfunc( prm, varptr(fnIo_outd9x), 2 ) : return #deffunc _InitIO ; **************************************************************************** dim fnIo_inp9x,4 ;io_inp fnIo_inp9x=0x24548B66,0xFF25EC04,0xC3000000 ; ---------------------------------------------------------------------------- ; adr. machine assembler ; ---------------------------------------------------------------------------- ; 0000 668b542404 mov dx,[esp+04] ; 0005 ec in al,dx ; 0006 25ff000000 and eax,000000ff ; 000b c3 ret ; **************************************************************************** dim fnIo_inpw9x,4 ;io_inpw fnIo_inpw9x=0x24548B66,0xFF25ED04,0xC30000FF ; ---------------------------------------------------------------------------- ; adr. machine assembler ; ---------------------------------------------------------------------------- ; 0000 668b542404 mov dx,[esp+04] ; 0005 ed in eax,dx ; 0006 25ffff0000 and eax,0000ffff ; 000b c3 ret ; **************************************************************************** dim fnIo_inpd9x,4 ;io_inpd fnIo_inpd9x=0x24548B66,0x00C3ED04 ; ---------------------------------------------------------------------------- ; adr. machine assembler ; ---------------------------------------------------------------------------- ; 0000 668b542404 mov dx,[esp+04] ; 0005 ed in eax,dx ; 0006 c3 ret ; **************************************************************************** dim fnIo_out9x,8 ;io_out fnIo_out9x=0x24548B66,0x24448A04,0x00C3EE08 ; ---------------------------------------------------------------------------- ; adr. machine assembler ; ---------------------------------------------------------------------------- ; 0000 668b542404 mov dx,[esp+04] ; 0005 8a442408 mov al,[esp+08] ; 0009 ee out dx,al ; 000a c3 ret ; **************************************************************************** dim fnIo_outw9x,8 ;io_outw fnIo_outw9x=0x24548B66,0x448B6604,0xEF660824,0x000000C3 ; ---------------------------------------------------------------------------- ; adr. machine assembler ; ---------------------------------------------------------------------------- ; 0000 668b542404 mov dx,[esp+04] ; 0005 668b442408 mov ax,[esp+08] ; 000a 66ef out dx,ax ; 000c c3 ret ; **************************************************************************** dim fnIo_outd9x,8 ;io_outd fnIo_outd9x=0x24548B66,0x24448B04,0x00C3EF08 ; ---------------------------------------------------------------------------- ; adr. machine assembler ; ---------------------------------------------------------------------------- ; 0000 668b542404 mov dx,[esp+04] ; 0005 8b442408 mov eax,[esp+08] ; 0009 ef out dx,eax ; 000a c3 ret ; **************************************************************************** return #global _InitIO



S

リンク

2007/5/5(Sat) 06:20:46|NO.8043

>自分でOS、作れますよ。(アセンブラを使う場面もありますが)

 どんなOSか見てみたいですな。一度公開してみてください。



f

リンク

2007/5/5(Sat) 08:31:08|NO.8045

>Windows上(DLL無し)でI/O系の命令をすることは出来ます。

windows上で動いても意味なくね?
つか、実は最初の書き込みから疑問なんだけど、OSを作るって言うのは、「windows上でのみ動作するOS」って意味なの?
てっきり、自力でブートして、ハードウェアやアプリケーションの管理してくれるような物を1から作るって意味かと思ったんだけど。



abo

リンク

2007/5/5(Sat) 08:43:33|NO.8046

> てっきり、自力でブートして、ハードウェアやアプリケーションの管理してくれるような物を1から作るって意味かと思ったんだけど。
私もそう思いましたが...、「Windows9x/NT/2000/XP対応のインタプリタ言語」は理解されての質問だということで...
「自力でブート...」であればHSP以外の言語(アセンブラ、C)を使用するべきだと思います。



水野

リンク

2007/5/5(Sat) 13:34:38|NO.8052

>fさん
自力でブートです。

無理も承知でこんな事を言い出したのに、
皆さんご意見ありがとうございます。
あと、公開といわれても、
公開出来る様なページを持っていませんし...
ブートセクタを作り終わったばかりですし...



水野

リンク

2007/5/5(Sat) 13:36:09|NO.8053

いろいろと意見を頂いたので
解決にしておきます。
作業に没頭しますかな。



x

リンク

2007/5/5(Sat) 14:49:56|NO.8055

>何でそうとりますか...
>みなさんの返答を頂きたかったのに...
>不愉快極まりないです。
自分も不愉快な文章を書いたことに気づけないのかな

>もう、いっそのこと、インラインアセンブラを実装してください。
>できないなら、coffやomfなどの指定をして
>オブジェクトファイルを作成を出来る様に
>してはくれませんか。こっちでリンクしますから。
この部分は質問でも提案でもなく、アプリの作成依頼だよね。

>あと、公開といわれても、
>公開出来る様なページを持っていませんし...
無料でサーバースペースを借りられるところもあるから、
そこで現在できている部分だけでも公開したら。



a

リンク

2007/5/5(Sat) 19:48:43|NO.8068

>自分でOS、作れますよ。(アセンブラを使う場面もありますが)
だからさぁ自分で作れるんだったらわざわざこんなところに顔ださなくてもいいんじゃないのかって言いたいのよ。
アセンブラを使う場合ってか使えるものがあるのになんでざわざわHSPでやるのかって思うんだよね。
別にHSPで挑戦する・しないと言ってるんじゃなくてさぁ。

こういうことを言うのはさぁ、あなた初心者の間違いをいちいち揚げ足とったりしてたよねぇ?
最初は初心者同士だと思ってたからスルーしてたけどさ、
あなた上級者なんでしょ?上級者がやることじゃないんだよ。

そういうことがあったから余計にいまさら顔だしてこれ見よがしに技術をひけらかしているように映るの。
技術は上級者でも精神が初級者ってことなのかな。



a

リンク

2007/5/5(Sat) 19:53:12|NO.8070

言い忘れー。上級者にしてはタイトルのつけかたが超下手。



ONION software Copyright 1997-2021(c) All rights reserved.