TOP カテ一覧 スレ一覧 100〜終まで 2ch元 削除依頼
PC-9821/9801スレッド Part84
一緒に棺桶に入れてほしいマシンは?
【意外と】HARDOFF【穴場】
ビルゲイツに挑戦
一緒に棺桶に入れてほしいマシンは?
古いマシンにGUI
PC-9800シリーズに関する板分割賛否スレッド
【IDなし】MSXスレッド Part 46【安全】
アセンブラの開発ツールを教えろ
ここだけPCの進化が15年前に止まったスレ

アセンブラが買えずハンドアセンブルした人の数→


1 :02/01/10 〜 最終レス :2019/11/21
ジャンプ命令でアドレスを手計算したよね?
C9

2 :
RETだっけ?

3 :
H68TRから始めたから、ハンドアセンブルなんてしたことないよ。

4 :
PC-80/88時代は、アセンブラを知らずにハンドアセンブルしてた。
後からアセンブラというツールの存在を知って、なんて便利なんだ!と。
決して「買えなかった」って事ではないので sage。

5 :
88にはマシン語モニターに簡易アセンブラがついてた。
でも、インテルニーモニックだったからとっつきにくくて使わなかった。
持ってた解説書がZ80ニーモニックだったし。

6 :
1ラインアセンブラのほうが
シンボリックアセンブラよりしっくり来てた奴前に出ろ!

7 :
アセンブラは買った事無いな。CP/M買ってフリーの使ったり、その後にS-OSだったり。
フラグ変化を無視して良い場合 3E 00 より AF。

8 :
LD A,0 → XOR A ですね。常用してました。

9 :
Z80基板作って、モニタをROMに焼いて・・・
最初はハンドアセンブルしてた、
その後、ハンドアセンブラで簡易アセンブラを作った。

10 :
スイッチをパチパチして暗記しているIPLコードを打ち込んでから紙テープを読ませて・・・
↑こんなバカ、じゃなくて本物のプログラマは実在するのか?

11 :
>>8
ゼビウスを作った人達は「LD A,0」を多用してたみたいだね。
ゲーム的には歴史に残るゲームなのに、作ってるのは素人集団。

12 :
>>11
そういうキミはいまだに素人(ワラ

13 :
今年38になりますが、気分はまだまだ素人です。

14 :
>>11
ゲ製板に、製作者本人(遠藤氏)がキャップ付でいるよ。
理由を聞いてみたら?

15 :
パッチ当てがやり易い
M1サイクルが減って消費電力が下がる

16 :
CD0500

17 :
というか、全員やった事あるんじゃないの?

18 :
>11
xor aだったらフラグが変化するから ld a,0を使っていたか、
コンパイラを使っていたのではないですか。

19 :
>>18
アーケードでコンパイラ使うようになったのは、もっとずっと後になります。
自分もZ80覚えたてのときはXOR A猿だった。
その後、必要ないところはLD A,0にするようになったよ。読みやすいから。

20 :
コンパイラってもいろいろあるから。
N-BASICも一部コンパイラ(PL/M)で書かれていたんじゃないの?

21 :
>>1 ←これを相対ジャンプで書き直してくらさい

22 :
>>21
JP $-($-1)

23 :
なんか「キム少年のマシン語会話講座」(←間違ってるかも)みたいになってきたな(藁

24 :
アセンブラ欲しかったなぁ・・・。< M6800猿

25 :
CD5055

26 :
CALL-151

27 :
JR (-2-27)

28 :
>>10
昔のIPLは短かったし、何度も入力させられていたから、みんなやっていたとか。
そういう旨のことを、ウチの助教授がほざいていました。

29 :
>>28
今時のマシンの起動の方が遅い鴨

30 :
MZ-80B vs Win2k 起動時間対決とかやってみたら面白そう。スレ違いsage

31 :
>>28
学校の片隅に転がってました。
さすがに授業でやったのは、穿孔テープ、穿孔カード、
マークシートカードだけですね。
マークシートカードは他の授業中に机の上でプログラムが
入力できるので重宝しました。

32 :
C3 01 00

33 :
初代88でハンドアセンブル。
大して知識ないのに、CMDなどの未使用BASIC命令を使おうとして、
実行>暴走>自動リセット
を繰り返してた日々が懐かしい。

34 :
再ロードはカセットテープから?

35 :
文房具屋でコーディング用紙って売ってたよね。
アセンブラ用とか、フォートラン用とか。

36 :
>>35
なつかしい!
漏れは、Campusノートに線を引いて書いていたYO!

37 :
>>34
CMDやISETをPRINT命令やLOAD命令にしただけだったので、
最初は、手入力オンリー
ROM-BASICマンセー(T_T)

38 :
X1TURBOのROMバイオスは手品のようなコードがちりばめられており、結構勉強になりました。

39 :
8801のN88BASICのROMの、スタック馬鹿一代には参った。

40 :
ふと、こんなのを思い出しました。
関係のないレジスタを壊さずに HL=HL+A をやりたい時、
PUSH BC
LD C,A
LD B,0
ADD HL,BC
POP BC
これだと6バイト、
ADD A,L
LD L,A
ADC A,H
SUB L
LD H,A
これだと5バイトでした。
後半がとても斬新でした。

41 :
>>40
おお、しかも20ステートだ。

42 :
>>40
絶妙な差し手で決まる7手詰めの詰め将棋のよう。
感動しました。前半の方は僕もよく書いたです。
無難というか、ADD HL,BCの用途目的のまんまっすね。

43 :
漏れも、懐かしくて思い出したよ。
5ビットデータのMSB2ビットだけ左にスライドする必要があったとき
LD C,A
AND 00011000b
RLCA
LD B,A
LD A,C
AND 00000111b
OR B
が、
LD B,A
AND 00011000b
ADD A,B
で実現できることに気づいたとき震えたね。
我が厨房ハンドアセンブル時代。

44 :
ハンドアセンブル…
レジスタの遣り繰り。
1バイトを削る努力。
新ルーチンの発明。
コード表とにらめっこ。
ビット操作に明け暮れる日々…
嗚呼!少年の日の無邪気さよ!
あの集中力をもう一度!ううっ…(涙

45 :
LD A,0をXOR Aとするのは基本でしたけど、
たまにSUB Aって書く人いませんでした?
あと、CP 0に相当するものが、OR A派と、
AND A派に分かれてましたよね。

46 :
>45
それ使っていましたが、sub a,aですよん。cp 0はor aかな。
実際よくハンドアセンブルしていたのはポケコン。
Z80はアセンブラ。

47 :
あ、違ったかな。subはa無しで、sbcがa有りだったかなあ。
間違っていたらスマソ。

48 :
>>47
ADD,ADC,SBCはHLレジスタが対象の場合があるからAつきで、
SUB,AND,OR,XORはA専用だったからAなしだったんですよね。
ちなみに自分の場合は、XOR(引き算をしたというフラグが
立たないため)とOR(ANDより名前が短い)だったのですが…。
SUB Aを使っていた理由は何でしょう?

49 :
Carry→A (00, FF) に、 sbc a,a をよく使ったね。

50 :
>>49
それは今でも使う

51 :
みなさん、PUSH POP は使うほう?

52 :
>>51
おれは使ってる…。もうメモリはいっぱい有るし、Z80速くなったし(涙

53 :
ex hl,bc するのに、push, pop使って
push bc
ex (sp),hl
pop bc
とかやってた。

54 :
>48
なんとなくかな。ポケコンにXORが無かったからかな。
なぜかSUBのほうだった。
今もZ80使っているけど、最近はCのほうが多い。

55 :
あぁ…なるほど、他のCPUの影響があったんですね。
そういえば、6502なんかもSUB(SBCだったかな?)
を使うみたいだったから、そのへんの影響を受けてる
人もいたんでしょうね。
しかし今もZ80使ってるのってすごいですねー。

56 :
>55
aki-80とかです。まあたまにですけど。

57 :
>>55
6502 はレジスタ同士の演算なんかできないので LDA #0 とか素直に書きますよ。
65C02 なんかだと命令が色々拡張されてて ACC をクリアする CLA という命令とか
もあって便利でしたね。

58 :
>>44
禿げ同。本当、今では考えられないくらいの根性あったよな(w

59 :
>23
色々勉強になったね。
ちなみに、知らん人のために簡単に説明すると
A=I(一人称)
B=YOU(二人称)
CP B  「ごきげんいかが?」 (私とあなたの状態を比較している)
応用で
CP (HL) 「ここはどこ?」
AND A   「私は誰?」
LD A,0 おなかすいた。
XOR A  はらへった!(フラグで強調)
SUB A ・・・は何だったっけ?
PUSH AF それはともかく(おいといて)

60 :
わかりやすいっすね。
厨房の俺にはありがたいっす。

61 :
Z80シリーズはホントにはまったなあ。
あの頃はハンドアセンブルすんのに、ボロボロになったコード表を
持ってた記憶がある。
あとNECのPC-80/88シリーズのCPUって、必ず「Z80A相当」
って書いてあったのが、あの頃は意味わかんなくて不思議だった。
単にライセンス生産してて、自社製チップを使ってたんだよなー。
「mPD780C-1」 今でも覚えてる(笑)
んで88MRから4/8MHz切り替えになって、V1/V2モードで
混乱して。
あと隠し命令探すのも流行って、雑誌で特集組んだりしてたよな。
高速グラフィック画面消去プログラムのコードが、クロック数の
少ないPUSH命令のかたまりと知った時には愕然としたし(笑)
でも、あの頃のユーザーが一番パワーあったよな。
だって速度を求めるのに、実行クロック数を計算しながら組んだり
メモリを節約する為に、XOR Aみたいに同処理を短いコードで
組んでみたり。
Windows時代の今の若い人たちはホントにうらやましい。
5インチFDD2台積んだNECのPC-8031Wなんか本体の
PC-8001よりデカくて、30万以上してたんだぜ(笑)

62 :
>61
IXをHとLにわけたり、しかも88やX1で組むとRAMだから
自己書き換えでIX+Aとかで前後128バイトのMAP検索とかもできちゃう。
今でも仕事でZ80使うけどROMだからなんも遊べなひ・・・。

63 :
>>61
ライセンス生産じゃないよ。マスクを勝手にピーコして勝手に生産。
だから互換じゃなくて相当。どうせ書くならμPDにして。

64 :
>>61
μPD780Cは、正式なライセンス生産じゃなかったと思う。
当時の正式なセカンドソースは、日本ではシャープだけだったかな?
μPD780Cだと、NMIの処理か何かがちょっと違うとかあったと思う。
実用上は全然問題ありませんでしたがね。
で、そういう部分が問題にならないように、「相当」とキチンと
書いてたんだと思います。

65 :
今時のWinプログラマだけど、SSEやMMXやキャッシュ効率やストールで悩んでる
投機実行って言っても宣伝ほどの実力はないからアセンブラは不滅

66 :
隠しコマンドで思い出したけど、NEC製チップってさ、
裏レジスタあったよね?
一度に全てのレジスタの交換しか出来なかったけど、レジスタの
量が倍に増えたので嬉しかった。
問題はプログラムがPC-80/88専用になる事だけど、
あの頃は機種専用プログラムが当たり前だったし。
だってアセンブラだから(笑)

67 :
>>66
Z80の元々の機能ですね。
EXXでBC,DE,HLのそれぞれの裏レジスタが使えた。
EX AF,AF'でAFの裏ね。

68 :
そういえば今アセンブラの勉強できる本ってあるのかな。
アマゾンで検索してもほとんどが在庫切れ。

69 :
>>64
あと東芝。

70 :
ありゃ! すごい突っ込みが。 失礼しました(笑)
正式じゃなかったのか。 たしかに「相当」だったよね。
「μ」って機種依存じゃないのかって思ってさ。 スマソ。
しかしNECはVシリーズチップといい、そんな事ばっかり
やってんのか(笑)
俺は結局286からはEPSON派になったが。

71 :
>68
Z80?
686?
Z80ならエミュのソース見ながら解説ページで勉強、とか。

72 :
アスキーの「はじめて読む〜」シリーズはまだ売ってるよ。

73 :
>>69
東芝はだいぶ後になってからのライセンスだったんですよね。
MSX2あたりの時代だったような。
だからパソピアなんかもNECのμPD780Cだったはずですよ。

74 :
>67
裏レジは非常に使うのが難しかったですね。
よほどの事がないかぎり使いませんでした。

75 :
BASICのREM文でアセンブラ書いてなかった?
俺はずーっとそれだったよ。P6で。
当時はC言語のソースに憧れてBASICのREM文に意味泣くmain()
とか書いて一人悦に入っていたな(w

76 :
>>74
確かに難しい…っていうか、それほど利用するチャンスが
ありませんでしたね。IXやIYのほうが使い道はありました。
裏レジスタは、元々は割り込み処理のために存在していた、
とも言われてましたが、そういう例はあまりなかったような…。

77 :
PC8801用のCP/Mは、糞でIX,IYが使えなかったような記憶がある。

78 :
>>77
システムコールの前に PUSH IX; PUSH IY
システムコールの後に POP IY; POP IX
というふうにやってもだめだったの?

79 :
昔はZ80の命令表を暗記していて「脳内アセンブル」なんてことが
出来る人が居ましたナア…。
さすがに相対ジャンプ計算まではやってなかったみたいだけど。
自分が初めて使ったアセンブラはMSX用のROMカセットでした。
Coralという会社から出ていた。と思う。

80 :
>79
当時は直接16進でうちこんでいく人は結構いたよ。
ジャンプも自動的に頭の中で変換されるらしい。
ハードやってる人だと自然にそうなっちゃうみたい。
でも88でモニタに直接16進でダカダカ打ってくのを見たときにはちょっとひいた。

81 :
>76
サブに飛ばすときに、PUSHPOPするよりもとりあえず裏がえしとく
みたいな使い方はシテタと思う。
Cの変数みたいだ。ローカルな。

82 :
裏レジは良く使った。やっぱ割り込み処理。
組み込み用途ばかりだったから、たまたまそうなだけだと思うが。

83 :
>>79
Z80が出る前の8080時代でしたが,脳内アセンブルしてました.
16進でなくて8進で覚えるのがミソ.

84 :
>>77
PC8801のCP/Mって、ASM.COMかDDT.COMの仕様と勘違いしてない?

85 :
BIOSが勝手にIXやIYを使って壊すから、とか、
割り込み処理ルーチンがそういうことする、とか。
MSAだったらやりかねないかも…。

86 :
>>76
えー、裏レジ使わないでZ80の最適化は語れないよー。
レジスタの割り当ては、もう細心の注意を払ってさぁ・・・
それでも10%の高速化の為にルーチンの80%を書き
なおすなんて事はよくあったよ。今考えるとアホくさい
けど、当時はそれが楽しかったりしたんだ。

87 :
>>79
16進ダンプ見ながら、脳内逆アセンブルする人も
結構いたと思う。

88 :
>>75
アセンブラと関係ないんだけど、
FMのKコンパイラって、ソースをBASICの注釈で書くようになってたね。
元々強力なフルスクリーンエディタ(?)をROMで持ってるんだから、
それを使おうというわけで。うまい方法だと思った。
同じ方式のアセンブラとかあったのかな。

89 :
FFシリーズの初期メインプログラマだったナーシャ・ジベリは、
完璧脳内アセンブルができる人だったらしい
彼の開発環境にはプリンタはなく(バグが出ないから)
さらに命令クロックも考慮したコーディングをしていたらしい
なにやら、どのルーチンに分岐しても、それを処理する
クロック数が常に同じになるように作られていたらしい
今はカルフォルニアでレストランを経営しているらしい

90 :
>>89
恐ろしく懐かしい名前が。
聖剣2...。

91 :
>>89
仕事で彼のコードを見せてもらったことがあります。FCです。
adxとせずinxを並べたルーチンを呼んでるところとかあったな。
>今はカルフォルニアでレストランを経営しているらしい
いいことを聞きました。

92 :
ハンドアセンブルのおかげで、16進を逆方向に言えるようになった人は
多いと思う。

93 :
>>86
脳内アセンブルで裏レジ使って、混乱して吹っ飛ばしたことも、しばしば。
CPUクロックの遅い時代って、ほんと最適化が必要でしたね。
「お、こりゃ便利だ」とか思ってIX,IY使ったら、激遅で使い物にならなかった
なぁ...
Z80の裏命令を初めて知った時も、試しに使ってみたら、吐くほど遅かったし。

94 :
>>92
16進逆順とはちょっと違いますが、ANK文字の
アスキーコードは、今でも即座に16進数で言えます。
もう、何の役にも立ちませんが…ね(藁

95 :
>>88
>同じ方式のアセンブラとかあったのかな。
富士通純正のアブソリュートアセンブラが同じ方式だったよ。

96 :
>>93
昔、IX・IYの利用価値について、知人と言い争ったことがあった。
でも、絶対使わないと逝った自分も、最終的には使った。
頻出する固定データが4バイト以下のプログラムなら、
LD A,(nn)を使うより、LD A,IXHなどを使うほうが早い。
欠点は、アセンブラが対応していないので・・・

97 :
BASICMasterJrに6単位TTYを繋いでハンドアセンブルでドライバを
作ったことがある。なかなか動かなかったが逆アセンブラは作って
いたのでそいつで逆アセンブルしたらすぐバグが見つかって動くよ
うになった。なんで逆アセンブルすることにすぐに気がつかなかっ
たのだろうか。

98 :
Cのスタックフレームや構造体のアクセスには IX, IY レジスタって
便利なんだけどね。ハンドアセンブルじゃそんなコード書かんしな。

99 :
>>96
オレはインデクスレジスタが2本のCPU以外ではゲームを作る気にならんかった
ふつう、アセンブラでも敵キャラを構造体にして持つよね

100 :
Z80のインデクスレジスタのオフセットって-128〜127だけど、
負のオフセットって意味あったのかな?

101 :
68系のニーモニックであこがれていたのが SEX
別スレにもこの話題があったか。
で、
100を踏んでみる

102 :
100 とられてしまた... 今日は嫁とSEXして寝る。
最近アレなので、潤滑ゼリー使用。

103 :
>>99
だから98のようにスタックフレームとか

104 :
すまん、99じゃなく100だった
俺は嫁がいないから自分で抜いて寝る

105 :
嫁に拒否されてすごすごと戻ってきました。
>>77
"8801用"っていうCP/Mはありましたか? 8801の8001部分を
使っていたのではなかったでしたっけ。
>>85
割り込みで壊れるのであれば、77の説明が付くけどね。
MSAって当時も、「あれは使わないほうがいい」って言われてた
し、いまだに恨みに近い感情を持っている人が多いようですね。

106 :
>>99
そういえば、彼はバリバリゲームを作っていて、
漏れはエミュ作ったりFDプロテ外したり、ゲームは作ってなかった。
ゲームならインデックスの利用価値はありますね。

107 :
>>105
>割り込みで壊れるのであれば、77の説明が付くけどね。
>MSAって当時も、「あれは使わないほうがいい」って言われてた
MSAなら後から出してたTurboPascalは動いたのかな?
ま、当時CP/MでZ80のコードって極一部だったけどね。

108 :
隠しコマンドマンセー

109 :
"8801用"っていうCP/Mはありましたか?
あったよ。

110 :
アセンブラは持ってましたが、というかICEを使って結構環境は良かったです。
ただ外回りでロムライターしかない場合は、泣く泣くハンドアセンブルしてましたが。

111 :
その昔、TKー85をZ80書籍片手に入力しようとしたが、
付属のマニュアルはインテルニーモニックで解説。
厨房だった漏れは、Z80のニーモニックを脇に書き込んで
ROM内基本ルーチンの動作を辿ったことがあった。なつかしい

112 :
8080の後継として8085を出すような会社が21世紀になっても栄えているんだから不思議

113 :
懐かしい〜。
一旦コードを書いたあと、ステートを減らす方法を考えるのが楽しかったなぁ…。
おかげで「Z80秘伝の書」ボロボロ(笑)。

114 :
>>112
やっぱ互換性が重要ってことよ。
パソコン本体だって同じだったよね。

115 :
BASICの遅さにイラついてハンドアセンブルで機械語の世界へ。
しばらくするとハンドアセンブルが面倒でBASICでアセンブラ作った。
更にしばらくするとBASICのアセンブラが遅くてイラついてアセンブリでアセンブラ作った。
若かーたよね(笑

116 :
私も逆アセンブラならBASICで作りましたねー。
中途半端で出来は悪かったですが、それでも無いよりマシでした(笑)。

117 :
PCとかZ80とか68Kじゃなくて、マイコン組み込みで
現役でアセンブラコリコリ書いてるんですけど...。

つい最近まで4ビットCPU使ってたyo!

118 :
>>115-116
なんか
エキサイト翻訳で英→日→英するネタを思い出した。


119 :
>>112
8085は火星にも逝ったしねー

120 :
>>119
COSMACなんか外宇宙まで逝ったぞ

121 :
>>119
御供でPowerPCも行ってる(逆かw

122 :
お前らにJavaをやる資格はな〜い
ハンドアセンブルから出直してこ〜い
と思わなかったりする今日この頃。

123 :
メモリマップから設計していた頃の考え方が抜けなくて
メモリが細切れになってるんじゃないかと心配しながらプログラム組んでます

124 :
「アセンブラが買えずハンドアセンブルした人の数」

「Windowsソフトをオールアセンブラで組もうと企んでいる人の数」
にはならないね

125 :
>>124
参考までに、今Windowsのソフトってアセンブラで作れたりするんですか?

126 :
>>125
作れるよ
ダンプリストを直打ちして作ることも可能
がんばってくれ

127 :
>>126
それはどもです。ダンプリストにチャレンジしてみます

128 :
RET:C9
JP:C3
CALL:C?


129 :
>>128
CALLは無条件ならCD

130 :
DI:F3
HALT:76
NOP:00
LD BC,xxxx:01
RST 38H:FF
LD A,xx:3E
XOR A:AF
無駄な記憶だ・・・

131 :
8ビット×8ビット乗算にADD HL,DEを使うのは素人

132 :
>>131
っつーか、そういう発想の出る>>131は素人。しかも丸だしの(w

133 :
8ビット×8ビット乗算にADD HL,HLを使うのは素人

134 :
MSX使ってたときがんばってたなぁ

135 :
私は去年、MSXでやった。
急にやりたくなったんだもん、しょうがないじゃない。

136 :
アセンブラがなかったので作ってしまったわたしはこのスレ参加不可ですか?(笑)
(ぽけこんで)

137 :
EXX

138 :
SEX

139 :
>>138
ホントにあるんだよな・・・。
でもアセンブラはやっぱり変態アセンブラBASEでしょ。

140 :
>>139
BASEはクソ。逝ってよし。つーか、BASEでソース書くなよ。>某メーカープログラマ
ゲーム移植で一番最初にしなくちゃいけなかったのはBASEの表記の資料をあつめること。
ZASMなどのZilogニモニック派はBASEは大嫌いだった。
つーか、スレ違いだな。
SEXは6809命令だね

141 :
被乗数:Ereg 乗数:Areg 結果:HLreg

 PUSH DE
 PUSH AF

 LD D,0
 LD H,D
 LD L,D
 SCF
 ADC A,A

LOOP1:
 JR NC,SKIP1
 ADD HL,HL
 ADD HL,DE
 JR SKIP2

SKIP1:
 ADD HL,HL

SKIP2:
 ADD A,A
 JR NZ,LOOP1

 POP AF
 POP DE

両方とも使いますが?>>131-133

142 :
8ビット加算&右シフトと、乗数と結果をLregで共有するのがポイント
テーブル使わないでもっとクロック削れるかな
; HL = H*L
XOR A
RR L
JR NC,$+3
ADD A,H
RRA
RR L
JR NC,$+3
ADD A,H
RRA
RR L
JR NC,$+3
ADD A,H
RRA
RR L
JR NC,$+3
ADD A,H
RRA
RR L
JR NC,$+3
ADD A,H
RRA
RR L
JR NC,$+3
ADD A,H
RRA
RR L
JR NC,$+3
ADD A,H
RRA
RR L
JR NC,$+3
ADD A,H
RRA
RR L
LD H,A

143 :
>>64
#でZ80のセカンドソースのパターンかいてた知人から聞いてけど、ザイログからは
ろくな資料無しで自分達で作ってたそうだ。
で、隠し命令はエンコードの関係上の偶然の副産物だったそうな。
で、#が嶋氏をヘッドハントしようとしたけど、条件面に折り合わなくなって、
暫くして(ASCII系列の)VMテクノロジーだっけに移転したんだっけ。
工房の頃、アセンブラの命令表見てて、「LD A,Aとかって何かに使えないかなぁ?」って
考えた時にM1サイクルにあわせて、データバスをフェッチすれば、MMUもどきのバンク切換
専用命令とかに応用できそうな気がしてASICのパターン起こそうと考えたな。
他に、何か使えそうな用途ある?<LD A,Aとか

144 :
>>142
6502あたりでは大昔から定石となっている乗算手法なんだが8080では無意味だったりする
8080との腐れ縁で損しているZ80ってところかな

145 :
そういえば昔一定のメモリ領域内で双方のプログラムを戦わせる〔領域を自分のコードで埋める)
コアウオーズって知ってる方います?

146 :
ハンドアセンブル・・・
日立S1の時にやってたことあるけど、
効率がぜんぜん違う。
でも、X68000のGCCを見て以来、
アセンブラは使うまい、と決めた。

147 :
M80

148 :
>>146
え?そう?
こりゃ一生アセンブラから抜けれないと思ったよ…gcc2になっても。

149 :
>>148
自分ごときの最適化能力じゃ、
GCCのレベルと大差ないってことがわかったんだ。
Cに比べて効率悪い分だけ損ってわけ。
それに今じゃ、CPUの速度がアホほど上がってるし・・・

150 :
BASICでアセンブラと逆アセンブラ自作したよ。
ハンドアセンブルなんて(自分には)できっこないって思いこんでたから(笑)

151 :
>>150 もしかして超まいなぁ〜機種ユーザー

152 :
>>151
正解。VICーC64ユーザー。で、アセンブラ作ったのはC64で。
VICでは当然無理。

153 :
>>143
ZAX社のインサーキットエミュレータ(ZICE)は、LD A,A命令
が来たら、そこでBREAKするという機能を持ってた。もちろん
その機能を無効にする事もできた。 

154 :
な、なつかしー。
リアル厨房のときに使ってたハンドアセンブル用ノートは
消しゴム跡だらけだった。コマンドを挿入するたびに
それ以降を消して書き直しとかしてたなあ。
リロケータビリティのために相対アドレッシングにしてたら
JR命令を書き直ししなきゃならなかったりたりして。

155 :
初めて買ったマシン語入門の本に
「マシン語はBASICと違ってプログラムの修正ができません。できたとしても1バイト書き換える程度です」
なんて書いてあって「???」だった。
実際にハンドアセンブルしてみて「あぁ、言いたいことはわかったけど、誤解を招く文章でもあるな」と
思った。
MSXの場合モニタをロードするところから始めないといけないのがナァ。MONコマンドがうらやましかった。

156 :
>>155
その為にところどころムダに3バイトのNOPか、
例えば
   jp _nxt
_nxt ld a,(sample_X)
みたいなダミーのジャンプをいれといて
ICEで飛び先を変えて修正するとかしてましたな。
あ。パソコン単体だと無理か…。

157 :
オレは貧乏で機械すら持っていなかった。
従って、アセンブルだけでなく、プログラムの実行から
ハンドでやっていた。MZ80でそうやって作ったプロ
グラムを打ち込んでその通り動いた時は感動した。

158 :
BASICのREM文に記述するタイプの「ハンド」アセンブラ。
もちろん、シンボルもハンドアセンブル。

159 :
ファミベーでやってた。アセンブラなんて当然なかったから・・・。
MSXでもしばらくやってたな。

160 :
"Hello, world"をCでコンパイル。
     ↓
アセンブラ・ソースを出力。
     ↓
なんじゃこりゃあぁ!!

161 :
6809の相対ジャンプは計算が面倒だったのでダイレクトページ使いまくり。
LEAX命令なんてハンドアセンブラでは存在意義さえ分からなかった。

162 :
リアル厨房の時やってた。ハンドアセンブル。
相対ジャンプの計算が苦痛ダッターヨ。
前へ跳ぶ時と後ろへ跳ぶ時で違うんだよね。
PCは既に次の命令を指してるからね。

163 :
なるへそ、でも会社ではCしかつかえないので鬱

164 :
授業中にやってたな、ハンドアセンブル。


165 :
>>153
BOXですね。なつかしいな。
この他にもソフィアのinVなんか使いました。

166 :
みなさんハンドアセンブルでどれくらいの大きさのプログラムを作りましたか。
まさか10Kオーバーなんて人はいないですよね。
わたしは、ワンボードマイコン時代でせいぜい500バイトくらいまでです。

167 :
コモドール64のプログラムをハンドアセンブルで書いてました。
ファミリーBASICでも書きましたねぇ。
6502って最高ですよ。
それを設計した天才連中がARM社を設立したんですねぇ。
日本語のページがあたーよ。
http://www.arm.com/jp/

168 :
工房の頃、BASICに逆スクロールルーチンを混ぜてMSXで動かしたりしました(w
それにしても、よくZ80のハンドアセンブルなんてものにトライしようとしたな…
>あの時のオレ
ところでZ80って、今だとパチンコ・スロット以外に何に使われてるんでしょうか?


169 :
>>168
人口衛星

170 :
CD5055
はデバッグの必需品
でも88はマシン語モニタが超強力だったからあまり。

171 :
BASICから呼ぶスクロールルーチンくらいならトライするって程の量じゃ全然ないような。
つーかハンドアセンブルするまでもなく素でコード書けるようにすぐなったぞ。

172 :
I/Oプラザに載ってたような痛い自慢だな。

173 :
>>168
前Z80でデータロガー作りましたが、何か。
特に記録したいものもなく、いまだに実験していません。

174 :
>>173
プッ

175 :
>>173
うpしれ。

176 :
Z80は不滅でしょう。 512のROMの方が先に無くなる(た)。

177 :
プログラム途中で挫折したのであれなんだが・・・
昔って雑誌にアセンブラのリスト載ってなかったっけ?
打ち込んでSAVEして使ってくれって

178 :
ハンドアセンブルプログラムのデバッグでの、コード削除はまあよいとして、
追加は鬱陶しいですよね。
ここにいる皆さんは、もういい年していると思いますが、
今、ハンドアセンブルでプログラミングする根気はありますか?

179 :
数十バイト位のプログラムなら、やれるかも??? <- 数十バイトで何できる?!!

180 :
>>178
他に手段がなければできるかもしれん。
でも今はフリーのアセンブラがあるからな。

181 :
まずクロス環境構築するだろうなあ。紙に手でコード書くなんて耐えられない。

182 :
頭の中でアセンブルするんだろ?ふつー。

183 :
もし、プログラミング手法がハンドアセンブルだけになったら、
私はプログラマーをやめますが、SEだったらやります。

184 :
76

185 :
ハンド逆アセンブラーage

186 :
x86のオペコードのってどこで調べるの

187 :
>>150
漏れもBASICでアセンブラ作ったな。
MZ-1500
ラベルの使える本格的なやつだったので、
プログラムがでかくなって苦労した。
懐かしい

188 :
>>186
ttp://www.intel.com/

189 :
ぶっちゃけインテル表記使ってた人いる?

190 :
はい。
というかv30使い出してからintel表記使った。
でも、z80のときはzilog表記だったけど。
86使いの人にはintel表記はあまり違和感ないです。
あと、LSI-Cが吐くコードがintel表記だったので知らないと困ったし。

191 :
>>189
mviとか
lxiとか
88のモニタのaコマンドはIntel表記だったんで。
8080のコードしか書けない罠だった。

192 :
なんでインテル表記だったんだろうね。
契約結ばずに勝手に互換CPU作ったから材ログに遠慮したのか?

193 :
アセンブラの字句解析がラクだから。

194 :
>>38
著しく遅レスだがBIOSとRAMを行き来するトンネルに
感動した覚えが。
RST命令萌え。

195 :
ハンドアセンブルか懐かしいな
というか俺はPC-8801の市販ソフト数本作ってるけど
モニタに向かっていきなり16進数入力でプログラムしてた。
(フローチャート見ながらいきなり16進数で入力)
コードとの対応ほぼ覚えちゃってたし。
気味悪がる先輩とかいたよ....

196 :
VIC-1001はマニュアルの後ろのほうにマシン語の
コード表があったので素手でやってました

って言うか、市販ソフトでオールBASICとかだったころ
小学生がオールマシン語・・・・

197 :
>>196
自慢げに書いてるけど、で何を作ったの?
ROMルーチンやらVRAMやらキーボードの入力I/Oやらの資料もあったのか?
そういうのわからないのにやれる事といったら大した事じゃないと思うけど
画面にキャラクタを表示したとか、どうせそんなレベルじゃないのか?

198 :
電波新聞社『Z80マイコンプログラムテクニック』でおぼえた。
その後、8086のメモリ管理の面倒さに嫌気がして
Z80とともにハンドアセンブルは卒業した。

199 :
>>197
いいじゃん、それでも十分かと。
漏れもシューティングもどき作ったなー。MSXだけどさ。
まさかBASICでシューティングは作れない。マシン語の速さは麻薬的でした。
敵弾をどうやって自機にむかって飛ばすかとか悩んだのはいい思い出。
BASICと違って三角関数とかで楽できないモンねぇ。つうか小学生は知らないけど。
20個以上の敵弾が飛び交った時はガッツポーズでした。マジうれしかった。
そういや、連打判定ルーチン組む過程で、論理演算の簡略化とか知らずのうちに
やってた。それが論理演算と理解したのは大学に入ってからだった・・。
ガキが夢中になると何でもやっちゃうパワーあるんだなと、大人になって実感したよ(笑
とにかく面白かったよ。ハンドアセンブル。
今時のパソコンじゃ金銭的にも知的レベル的にも敷居が高すぎて、そういう原始的なワクワク感
て経験しにくくなったんじゃないかなー。どうでもいい懐古駄文でしたね。スマソ。

200 :
200

201 :
>>199
いや、いい話だよ。昔のパソコンはベーシックが付いてるのが普通だったけど、
最近のパソコンはそういうのが無いから作る楽しみが無くて可哀想に思う。

202 :
 ・・・あのー授業で使ったZ80頭脳のロボット演習で
ハンドアセンブルしているんですが。
いまだに現役の私は逝ってよしですか?

203 :
>>202
別にぃ。
電子系・情報系ではZ80使った実験演習があるところも多いね。
ウチのガッコでもZ80やったよ。

204 :
BASE80最強!!!
EXECモニターよ、ありがとう!!!

205 :
>>202
いいね!そういうマシン語での制御の経験ってやっぱ貴重。何がどう良いかはウマクいえないけど。
>>203
うちもやった。ボード上のブザーで音楽鳴らしたりしたんだけど、あまりに周囲から浮きすぎて理解されなかた。
仕方なくテキスト通りのしょぼいLED点滅モータ制御・・。
せっかく、MSX時代にPSGデータから拾った音階-周波数ウェイトの対応表(手書き)を
引っ張りだしてきて作ったのにー・・。


206 :
ああ、おれはノートすらもったいなくて、
広告の裏でハンドアセンブラしてたよ。
相対ジャンプのアドレスはあとで計算できるように
赤いボールペンで四角に囲って。
アセンブル終わってから「1,2,3,...,9,A,B,...1F,10..」と数えていった(w。
BIOSが何やってるのか知る必要があって、
逆アセンブラも作っちまったなー。
勢いでアセンブラも作ってやろうと思ったが、
これはシンボルとかどうしていいのか分からず、
結局断念。逆アセンブラは言ってみりゃ置換する
だけだもんな。
今はもう10年以上前の高校生のころ。
金は無かったがやる気はありまくりだったのー。

207 :
あの頃は若かったage

208 :
俺、今パチ○コのプログラマーだけど
Z80現役です…
高校のとき趣味でハンドアセンブルしたのがMSXのZ80だったな…


209 :
パチンコはZ80なのか!

210 :
北朝鮮が中古のパチンコ台を輸入して、Z80抜いてミサイルに搭載して
いるって問題になった時があったね。

211 :
(^^)

212 :
バカめ!!
パチンコというのはなぁ、Y字型の木の枝に輪ゴムを巻き(以下省略されました)

213 :
FM7のプログラムのバイトで3日徹夜して納品にこぎつけた.
久しぶりに家に帰って寝入りばなに電話があった.
朦朧とする意識の中電話を取った気がしたが,ふと気がついたら
電話機の前でうずくまって受話器を持ってぶつぶつ言っている私がいた.
「そこの番地の内容はは8Eですよね,それを7E 21 30 に,
 2130番地から 8E 21 00 .... 」
無意識でマシン語レベルでパッチ当てたのは後にも先にもこのときだけ.
それでちゃんと動いたからすごいよなぁ > 私の中の人 (藁

214 :
何でもSimple is Bestですな
今の複雑なシステムは何の得にもならん。
今更アセンブラだけで組めと言うのも酷だがナー
糞なPC/AT規格が勝ったというのが…

215 :
http://www.agemasukudasai.com/bloom/

216 :
・ー・)つきあってくれ(・ー・)つきあってくれ(・ー・)つきあってくれ
(・ー・)つきあってくれ(・ー・)つきあってくれ(・ー・)つきあってくれ
(・ー・)つきあってくれ(・ー・)つきあってくれ(・ー・)つきあってくれ
(・ー・)お前らも実は女だろ?俺と付き合え。

217 :
日立ベーシックマスターJr.は
何故か標準で6800マシンコードリファレンス&入門書が付いていた。
こんなの普通の人間は見ねぇよ・・と思いつつ
ありがたく利用させていただきました。
後の進路で非常に役立った感謝。

218 :
・ー・)つきあってくれ(・ー・)つきあってくれ(・ー・)つきあってくれ
(・ー・)つきあってくれ(・ー・)つきあってくれ(・ー・)つきあってくれ
(・ー・)つきあってくれ(・ー・)つきあってくれ(・ー・)つきあってくれ
(・ー・)217も実は女だろ?俺と付き合え。

219 :
「買えなかった」どころか、そもそもアセンブラなんか売ってなかった罠。
みんなハンドアセンブルしてた。それが当たり前だった。8ビットの時代。
あとは、I/OかASCIIに簡易アセンブラが載ってて、それを打ち込んで使った。

220 :
>>219
つーか、この時代はPC持ってるというだけでも金持ちの部類だったのだが・・・・
PCなんて手が出ない。ところで「初見では回避不能な弾幕」がないゲームってあるの?
176 名前: 175 [sage] 投稿日: 03/03/11 11:13 ID:???

221 :
ldx #$2130

222 :
>>220
そう、ナイコン族は指を咥えてみてるしかなかったのねん。
俺はポケコンマシン語入門でハンドアセンブルじゃったよぉ

224 :
>221
jmp $2130
2130:
ldx #$2100

225 :
APPLE][をてにいれたが、マシン語の命令がわからなかったので、
0からFFまで打ち込んでROM内の逆アセンブラで命令調べて、
動作させレジスタダンプさせて調べ上げた。
懐かしい思い出です。

226 :
Z80A

227 :
まあ漏れのH68/TRはアセンブラ内蔵だったワケだが・・・。

228 :
BASE86という謎のプログラムが手元にあるが、これはナンだ?
多分、キャリーラボで自社製品の開発に使用されていたらしいのだが。
キャリーの製品は、会社清算時にフリーソフトになった、という噂は
本当なんだろうか。


229 :
懐かしいですね。小学校6年当時に近所のプログラマーの人に
Z80の本を貰って、ハンドアセンブルして作ったのは
PC8001の左スクロールのプログラムだった記憶があります。
電源切るしかなかったけど、動いたときは本当に嬉しかった。
サイクル表を見て、少しでも速く動くように考えたりとか。
そういえば、友達にPC88でグラフィック画面を速く消そうと思ったら
LDとかでちんたらやらないで、SPをVRAMの先頭アドレスに合わせて
PUSHすればいいじゃん等と言われて、驚いたことがあった。
今じゃすっかり普通の職場でまったりと運転手やっていま・・・したのに
PHPでプログラム組まされてます。今のPCはわかんないよ!

230 :
ぽっくんも、8bit時代には小学生だったので、
(お年玉2年分(100%全財産)で激安ショップでポケコンPC-1500を無理して購入、
2年後に再びお年玉2年分(100%全財産はたいて)で、すでに旧機種となっていて投売り激安なPC-6001mk2購入)
金も無く、しかも悪いことに超超超田舎に住んでいたので、
周囲に、アセンブラを貸してくれるような「近所の機械好きな お兄さん」もおらず、
どうしようも無い環境の中、ハンドアセンブル以外には選択肢が無かった(ぉ

>>229
> PHPでプログラム組まされてます。今のPCはわかんないよ!
確かに、今のPCやサーバ上でプログラミングするのは厄介だよなー。
ハンドアセンブルで、ミニマムにコンパクトに、『全てを自分が把握/掌握』して
プログラミング出来た時代が懐かしい。
今は、OSやらミドルウエアやらサーバ上のdaemonやら、
さらにその上に被さって動くスクリプト処理エンジンやら、ごちゃごちゃごちゃごちゃと、
とにかく『他人が作った(頭の悪い、しかも微妙に不安定な)システム』が、
重層的に重なり合って動いていて、
『その上に さらに』自分の組んだプログラムを、
「下層レイヤーの全てと、周囲の全てに気を配りながら、そおっと そおっと慎重にバランスを取りながら置く」。
イライラするし、キィィィィィィイイイィィ!!!!ムカーーーつく!!ってなるよなぁ(笑

231 :
自分もやはりアセンブラの存在を知らずにハンドアセンブルしてますた
レジスタとRAMをやりくりしてハードを直接叩いてた時期が一番
「プログラムしてる!」って実感があったなあー
今は人が作ったもの同士を配管してるだけ、って感じがして空しい

232 :
>231
それはいえる。ある意味楽にはなったけど
ある意味、楽ではなくなった感じがする。

233 :
>>231
あのころはパソコンの隅から隅まで知ってたし、知らないと何もできなかった。
今は正直なにも知らない。第一ディスアッセンブル自体が違法?なんだよね。

234 :
(^^)

235 :
   ∧_∧
  (  ^^ )< ぬるぽ(^^)

236 :
あご

237 :
>>229
PUSHでVRAMクリアするってのはやったよな。
画面の下からクリアされるでやんのw
ところで、pc-8001はz80だけど、確かFDの制御もz80がやっていて
二つのCPUを並列動作させればより早くなるじゃん。
って思って挑戦してみたけど、いまいちうまくいかなかったなぁ。
やってみた人いる?

238 :
FDの制御にCPUそのものを搭載していたのか...
恐ろしい世の中だな。
それに倣って、Pen4を搭載したFDD作る香具師はおらんのかな。

239 :
━―━―━―━―━―━―━―━―━[JR山崎駅(^^)]━―━―━―━―━―━―━―━―━―

240 :
>>237
> ところで、pc-8001はz80だけど、確かFDの制御もz80がやっていて
> 二つのCPUを並列動作させればより早くなるじゃん。
> って思って挑戦してみたけど、いまいちうまくいかなかったなぁ。
> やってみた人いる?
88で、FDD内のZ80に演算を分担させてるゲームは実際に有ったよ。

241 :
>237
検索して情報を見つけました。
フロッピーディスクドライブ内のZ80を使って演算を分担させて
高速化を実現していたゲームは、
1986年に SystemSoft から発売された「 SeeNa 」です。たいにゃん作。
参考資料↓
http://www2s.biglobe.ne.jp/~tinyan/bugneko/seihin.htm
http://www.ff.iij4u.or.jp/~rewsirow/SeeNa/SeeNa.html

このゲームや、この作者さん以外にも、
同じ方法を思い付いて、自作のプログラムに応用していた人は居るかも。

242 :
ある意味すばらしい。よし、俺はビデオカードに演算を・・・・

243 :
>>241
シルフィードやヴァクソルなんかもそうじゃなかったっけ。

244 :
C64でやってました
6502は最高です

245 :

 __∧_∧_
 |(  ^^ )| <寝るぽ(^^)
 |\⌒⌒⌒\
 \ |⌒⌒⌒~|         山崎渉
   ~ ̄ ̄ ̄ ̄

246 :
ハッキリ言ってアメリカなどの多民族国家では黒人の方がアジア人よりもずっと立場は上だよ。
貧弱で弱弱しく、アグレッシブさに欠け、醜いアジア人は黒人のストレス解消のいい的。
黒人は有名スポーツ選手、ミュージシャンを多数輩出してるし、アジア人はかなり彼らに見下されている。
(黒人は白人には頭があがらないため日系料理天などの日本人店員相手に威張り散らしてストレス解消する。
また、日本女はすぐヤラせてくれる肉便器としてとおっている。
「○ドルでどうだ?(俺を買え)」と逆売春を持ちかける黒人男性も多い。)
彼らの見ていないところでこそこそ陰口しか叩けない日本人は滑稽。

247 :
     ∧_∧  ∧_∧
ピュ.ー (  ・3・) (  ^^ ) <これからも僕たちを応援して下さいね(^^)。
  =〔~∪ ̄ ̄ ̄∪ ̄ ̄〕
  = ◎――――――◎                      山崎渉&ぼるじょあ

248 :
アセンブラが買えないんじゃなくて、アセンブラが動くようなマシンが買えなかった
というほうが正しいのだが。

249 :
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン

250 :
はじめてのマシン語(MSX)
という本を買って、ハンドアセンブルしてますた。
モニタプログラムを自作して打ち込んでますた。
その後、PC-9801の3.5吋モデルを購入して、クロス開発が
出来るようになってウマー

251 :
いまだに趣味としてハンドアセンブルやってます。
Win上のテキストエディタでシコシコと。
命令表はHTMLで書いておいてあったり。

252 :
6809でやってた人なんていないよね。

253 :
ノシ いるよ。
パソがFM-NEW7だったから「はじめて読む6809」買ってきて覚えた。
でもハンドアセンブルしたのってメモリコピールーチン程度だけどw

254 :
漏れもやったな。命令表広げながら。
6809のシングルボードコンピュータを使った簡単なロボット
の制御用だったけど。もうかれこれ20年も前の話だけどね。

255 :
自分でアセンブラ作った人多いだろうなあ
漏れもその一人

256 :
このスレ見て、ハンドアセンブルというものをやってみたくなりました。
…でもどうすればいいんだろ…
とりあえず、Cは一通りできる。逆アセンブリなら多少経験有り。
普通にアセンブリ言語覚えてからにしたほうが良いですか?
ハンドアセンブルについて書かれた本などを探そうと思い検索かけたのですが、
日記みたいなページと、懐かしかった〜ってやつばっかでした。
それから、こんなん見つけときました。
http://www.game3rd.com/soft/z80edit/

257 :
PICマイコンボードでも作ればいいんじゃない?

258 :
※ハンドアセンブルのやり方。
1. 紙に(いや別にテキストエディタでもかまわんが)アセンブリ言語でプログラムを書く。このとき紙の左半分を空けておく。
2. 命令表を見ながら、命令に対応する機械語を書いていく。
例:
               ORG 3000H
          ;
          #MSX  EQU 1FE5H
          ;
3000 11 07 30       LD  DE,MSG
3003            CALL #MSX
               RET
          ;
          MSG:  DEFB "Hello!",0DH,00H
          ;
               END

259 :
おっと、ageた方がいいかな?

260 :
Z80 機械語⇔ニーモニック対応表
http://www.turboz.to/x1dev/z80main.html
http://www.kiss.taihaku.sendai.jp/~fuji/ZilogZ80/
http://www.systemload.com/download/downlist.html (その他→Z80ニーモニック一覧表)

261 :
6809・・・なつかしい!ハンドアセンブルやってました。FM77AV
いかに早いコードにするかクロックのサイクル表見ながら
格闘していたもんです。
今では・・・もう不要ですね。CPU勝手に速いし。

262 :
今はちまちまクロック削るんじゃなくて
アルゴリズムで高速化する時代だね。
ゲームプログラマーやってるけどこっちの方が大変です。

263 :
アセンブラ持ってたけどなんでかX-BASICで
リンカ機能をつけたアブソリュートアセンブラ
作ったことがある
ほんとに実行コードを吐いて自分でビックリした

264 :
いやー、俺なんか田舎者だから教えてくれる人もいなくて、
広告&ダンプリストだらけのI/Oが便りだった。
少ない小遣いで高価な機械語の本買ったのに1年寝かせてしまったしなー。
しかし多用した命令は今でも忘れないものだな。

265 :
嬉しいなぁ、6809ユーザいるねぇ。
リターンが39だったのは覚えてる(藁。

266 :
こんなスレがあったんだ。
試験機の制御用に使ったシャープのポケコン(中身がZ80相当のやつね)で
処理ルーチン書いてた頃を思い出してしまった。
それが高じてVZエディタのマクロで逆アセンブラまで作ってしまって、
ROMの全ルーチンを解析するまで逝ってしまったのが懐かしい。

267 :
FANFUNがハンドアセンブルと知った時は衝撃を受けた
ような記憶がある

268 :
>>100
真ん中にアドレス初期値を持ってきて、
256バイトのテーブルとして普通に使っていたよ。

269 :
>>268
それなら符号なしのオフセット 0〜255 の方が使いよくない?

270 :
88だったので8080の1パスは付いてた
でもz80命令はなかったので2バイト適当に入れておいて後で ED B0 とか入れ直していたり
0バイト先を相対ジャンプ先に指定して後で数え直したり...
テープセーブする前に走らせたら…無事に残っていることを祈ってリセットボタンしかなかったw

271 :
>>269
符号つき8ビットだったのは相対ジャンプの演算器を流用してたからじゃない?
いや、おもいっきり推測だけど。(^^;

272 :
ポケコン用の1パスアセンブラつーか、ニモニックで打ち込めるメモリエディタは自作したな。
ハンドアセンブルである程度出来上がったら、そのツールを使って動いてるそれ自身を修正してゆくの。
いまこの命令を実行してるから、このルーチンなら修正しても大丈夫だ、みたいな。

273 :
FANFUNってPC-8001のゲーム?
エニックスですよね。

274 :
FM7懐かしい〜
7E FE 00
だったかな
あるいはexec -512
これは憶えてる。

275 :
MZのシステムプログラム(アセンブラ)買ったけど
ちょ〜〜遅くて使い物にならず、結局ハンドアセンブルした
そういやI/Oにのったディープスキャンってゲームはハンドアセンブルしたって書いてなかったっけ?4K超位あったよ確か

276 :
SEX命令

277 :
FD E5 PUSH IY ← ぷっしー

278 :
76

279 :
MSXのマシン語入門みたいな本にアセンブラのリストが付いてたから、それをそのまま打ちこんで使っていた。
しかし、それだとFDD使えなかったから、MSX2に買い換えた時、結局もう一回アセンブラを入力し直すはめになった。

280 :
ハンドアセンブルする時、相対ジャンプの基準点が次の命令のアドレス
だという事を知らず、うまく動かなくて悩んだあの頃。

281 :
アセンブラって何?
ニーモニックを使って書いたコードがアセンブラ?
ニーモニックを使って書いたコードをマシン語に変換するプログラムがアセンブラ?
それとも上の二つはどちらもアセンブラ?
混乱してきた。
誰か説明して。

282 :
そもそもアセンブラが無かった。
コモドール64
ハンドアセンブルでスクロールルーチン組んでゲーム作ったよ。
6502は良かったなぁ〜。(遠い目)

283 :
>>281
ニモニック表記のソースコードをアセンブラって言うパターンが多いけど
正確にはアセンブリ言語だよね?
で、オブジェクト(機械語・マシン語)に変換するプログラムがアセンブラ。
ハンドアセンブルでアセンブラを作るのは、かなりつらい。
当時はBASICコンパイラとか考えなかったし。

284 :
>>262
昔のコンピュータの1サイクルと、今のコンピュータの1サイクルの差を考えれば自明の理かと...
たしか、PC-8801って4MHzだっけ?
今のPCは最速で4GHzだったと思ったから...

285 :
Z80の割り込みについて、
http://rd.vector.co.jp/soft/data/hardware/se056089.html
こんな注意があるようです。
トリッキーな解決方法が面白いかと。

286 :
命令を16進数でほとんど覚えちゃって
フローチャート見ながらいきなり16進数入力してプログラムしたな
宇宙人を見るような目で見られた

287 :
DJNZ 1

288 :
Z80っちゃ命令1000個くらいあったっけ。

289 :
700個ほどだよん。

290 :
たぶん990個

291 :
厨房の頃、98のDISK BASICでゲームとか作ってたとき
ループでウェイトかけるとCPUクロック数で速さが変わってしまうので
タイマーで正確にウェイトかけるために機械語使ってた。
領域確保とかよくわからんので、配列変数宣言して、その配列の中に
ハンドアセンブルした機械語コードをREAD, DATAで直ぶちこみしてた。
なつかしいな

292 :
コモドール64用のゲームをハンドアセンブルで作ってました。

293 :
アセンブラをハンドアセンブルした。
カセットテープからの2パス入力方式。
テキストエディタもハンドアセンブルした。
サブルーチン毎にパッチエリア設けて工夫してた。
んで、アセンブラとテキストエディタをアセンブラでアセンブルしなおした。
そのエディタとアセンブラで CP/M用BIOSとインテリジェントFDコントローラのファームをアセンブルした。
やっと CP/Mが動くようになってカセットテープインタフェース基板と一緒に捨てた。
キーボードより秋葉の路上で売ってたテンキーの入力の方が速かったあのころ。

294 :
今、何故かZ80

295 :
ターボアセンブラつかっていたよ^^
ターボC++とかターボパスカルも持っていたよ^^

296 :
CP/M上のTurbo Pascalは良く出来ていたなー。
手続きや関数に external が使えたので、アセンブラで作ったマシン語
ルーチンを置いて、極限まで8bitパワーを引き出していたのを思い出した。

297 :
未だに8bitで一番まともなコンパイラだと思う・・・TP。

298 :
MSXでBASICを勉強したあと、本に載っていたアセンブラを打ち込んで使いました。
それから逆に戻ってハンドアセンブルでマシン語を勉強しました。
昔のパソコンはゲームぐらいしかできなかったけど、あの時のほうが面白かった。


299 :
Z80の命令は、拡張命令の部分について、
ザイログ公称の命令数と、論理的に動作を予測させる(ザイログ保証外)の
命令数とありまして、命令数は少し違うんだよ! 知ってた?


300 :
MZ700の末巻にあった、8ビット列からの逆アセンブラ表は
非常に使いにくかったけど、CPU命令の動作原理の基本であり、
今となっては昔の思い出ですね。そこらへんの参考書なんかより、
原理がわかりやすかった。逆アセンブルには気が狂ったけど。

301 :
ダンブリスト見て脳内逆アセンブル
又はコード表なしで脳内アセンブル
できた人。。。挙手ノシ

302 :
ハンドアセンブルはまぁやったけど
結局めんどくさくなって
自分でアセンブラ作ったな

303 :
>>301
ぁぃょ!ノシ
3E とか 21,76,C3,C9なんかでブロックを見分けて、そっから展開してたな。
俺はインテルニモニックから入ったんで、Z80系は良くわからん・・・。

304 :
hosyu

305 :
hoshu

306 :
ld hl,c376h
ret

307 :
21 76 C3
C9

308 :
アセンブラとアルハンブラの区別が付かんかった俺も参加していいですか?
Oh!mzの1982/12だったと思うんだけど、Zilogニモニックと、それを疑似BASIC文
で表現した一覧表がものすごく良くできてた。傑作だったんで、2冊買って、
いまでも保存してあるよ。LD A,R(ED 5F)みたいな普通のアセンブラでは出力
できないようなものまでしっかり網羅してあった。

309 :
材ログ
って 映画の

310 :
アセンブラはコピって回ってきたのを使ってたな
マニュアルが無くて困った

311 :
ウチの社の製品はまだ8085を使ってまつ。
Z80と違って相対ジャンプがないのでROMライターにチョクでプログラムを
書き込むときは結構面倒です。
8085のアセンブラは方言がきつくて面倒だったんで、そんなことしたりした
んですが。

312 :
詳しく

313 :
>Z80と違って相対ジャンプがないのでROMライターにチョクでプログラムを
>書き込むときは結構面倒です。
???
ROMライター直書きは、絶対ジャンプの方が遙かに楽だと思うが

314 :
プログラムの部分がまとめて移動した時とか?
なわけないよな・・・

315 :

当時は F E D C B A 9 8 ... と逆算出来るようになってたな

316 :
ハンドアセンブルでアセンブラを作るという発想はなかったのか?

317 :
マクロアセンブラを使って、クロスアセンブラは作ったけどな。
>313
リロケータブルじゃなかったということね。ポケコンにPOKE文を使って
リロケータブルモニタを手入力したのがなつかしいなあ。

318 :
【論説】朝日新聞の倒閣キャンペーンの異様さ、切ないまでの政治的願望は、日本ジャーナリズム史に残るだろう
tp://news22.2ch.sc/test/read.cgi/newsplus/11184123463/l50

319 :
oRiacT <a href="http://zffgdxwylqzh.com/">jeiounvqxson</a>, [URL=http://dgmviqavcybk.com/]xwncrveueakc[/URL], [LINK=http://vpjybtopvfzx.com/]gnotheszlece[/LINK], http://ffsqalylcyne.com/

320 :
>>316
下手したらキーボードのキーリピート速度の方が
紙に書くより遅かったりして
マシン語ダンプリストとアセンブリ言語とどちらが早く入力できるか
議論していた時代だと思ってくれると多分当たってる

321 :
Z-1GRは?

322 :
不幸にもマクロアセンブラが無料でついてくるX68000から入ってしまったので
ハンドアセンブルする機会は無かった。

323 :
>>316 ...半年前か。
若い頃にZ80自作マイコンでテキストエディタとアセンブラを自作した。
電卓キーボードとLED表示でメモリ書き換えしてGOというモニタは学校のアセンブラで作ってあった。
卒業してからキーボートとCRTディスプレイのインタフェース作ってこれのファームはハンドアセンブル。
CRTインタフェースのキャラクタゼネレータROMデータも電卓キーボートから手打ちで入れてROM焼き。
ROMライタインタフェースも自作で書き込みプログラムもハンドアセンブルしたが大したことはなかった。
エディタは一行追加、一行削除の機能だけにしたので簡単だった。
エディット行を境にテキストを二分してバッファの前と後ろに張り付けて挿入のレスポンス上げた。
それでも1000行近くなるとエディット行の移動に結構時間かかった。
できたテキストはカセットテープにテキストの読み書きしてた。
アセンブラはIntel8080ニーモニックをエディタで出力したカセットテープから二度読みする2パス方式にした。
当時のIntelニーモニックはZilogニーモニックよりアセンブラ作りやすかった。
どんなアドレッシングでもオペコードがLDっていうのはコーディングは楽なんだがアセンブラからするとマシン語決めるのに手間取るので。
で、これのハンドアセンブルするのがかなり辛かったな。
ラベルが多すぎると2パス目にラベルテーブルサーチしてるあいだにカセットが
オーバランしちゃうんだよね。
んでテキストバッファでかくしたり色々と調整に苦労。
サブルーチン一つごとに32バイトのパッチエリア確保したりもしてたな。
このエディタとアセンブラでZ80搭載のFDインタフェースのファームとCP/M用BIOS作ったよ。
CP/Mが動いてからはZilogニーモニックでM80アセンブラ用に書き直してメンテしてた。
もうアセンブラを作る気は無いがマイコンいじりはしてる。H8のキットとかで。
今はGNU binutilが充実していてお手軽。

324 :
>>1
あえて言うが、それは
                C3
だ。









・・・・で分かる人、何人残ってるのだろうか >> 日本
(ちなみにC9はサブルーチンから戻る命令です、あえてC3を選んだ>>1に敬礼)

325 :
>>324
超わかりすぎる俺乙。

326 :
NOP age

327 :
>>324
}
みたいな意味で使ったんじゃない?

328 :
http://up.2chan.net/r/red/1193024010086.htm

329 :
BCDの存在意義は死ぬまで理解できないと思う

330 :
http://zip.2chan.net/6/src/1193291269328.jpg
すなわちwww

331 :
買わなくても雑誌に載ってた簡易アセンブラで十分だったし。
8801内蔵のアセンブラをザイログ方式に修正するパッチも載ってたよな。
みんな16進を自分で打ち込んで使ったもんだ。

332 :
>>324
いや、
   △: 18 □
   ○;
だ。
理由は○-△-2=□だから

333 :
キモデブ三十歳男Rよキモデブ三十歳男Rよキモデブ三十歳男Rよキモデブ三十歳男Rよ
キモデブ三十歳男Rよキモデブ三十歳男Rよキモデブ三十歳男Rよキモデブ三十歳男Rよ
キモデブ三十歳男Rよキモデブ三十歳男Rよキモデブ三十歳男Rよキモデブ三十歳男Rよ
キモデブ三十歳男Rよキモデブ三十歳男Rよキモデブ三十歳男Rよキモデブ三十歳男Rよ

334 :
さすがにハンドアセンブラはないな
最初のがPC-8801(初代)だったから一応モニタにワンラインアセンブル機能はあった
ただインテルニーモニックなのでZ80を覚えたところだったんで使いずらかった
書籍にパッチ当てプログラムが有ったんで楽にはなったが
経験の有る人に聞いたら修正等でジャンプ先ずれるだけでそれまでの作業が大部分ムダになるので
とてもやる気にはなれない(気が短いほうなので)と思った
それに近いのは雑誌に載ってるダンプリストの修正を試みたぐらいかな

335 :
×さすがにハンドアセンブラはないな
○さすがにハンドアセンブルはないな

336 :
パソコン買ったらマクロアセンブラとリンカが無料で付いてきたから
ハンドアセンブルする必要はなかった。
MSXではしかたなくやった。アンチョコみながらシコシコと。

337 :
>>336
最初はNOPだらけだと想像する
俺の場合はそのうちブロック転送プログラムを作り
出来る限り相対ジャンプを使うようにした
ユーザー解放のRST 38Hを利用して相対コールルーチンを作った
結果はプログラムが冗長になりスピードも低下したがw

338 :
×解放
○開放

339 :
俺はアセンブラでなくパソコンが買えずポケコンでハンドアセンブルしたよ
独自のBEEP音を出すコードを書いたけどそれ以来ハンドアセンブルしてないな
面白かったけど、ただ音出すだけでずいぶん時間かかったからなー
このスレのおかげでまたハンドアセンブルしたくなったよ

340 :
コードを書くのはある意味知的好奇心を満足させるが(デバッグも含めて)
ハンドアセンブル作業は単なる肉体労働だからなあ

341 :
>>340
「肉体労働」って表現ピッタシだな
高校生のとき友達がハンドアセンブル専門のパシリほしいとか言ってたしな

342 :
そういいたくなるのも一種の中二病だろうな。

343 :
ハンドアセンブルも最初のころは造ったプログラムを早く動かしたくて
ある程度夢中になれるから(その過程で同じ動作をする命令でも生成するバイナリは異なるとか発見もあって)
勉強にもなり無駄な労力を懸けたとは感じなかったけど
慣れるに従い(ほとんどニーモニックとマシン語の対応を覚えてしまった)この単調な作業がイヤになってきた
たぶん労力・時間はコーディング+デバッグ1に対して
ハンドアセンブルは4ぐらい(やる気が乏しいから能率も低下)

344 :
>>40
後半は判りにくい。5バイトならこれで同じことが出来る。
ADD A,L
LD L,A
JR NC,xx
INC H
xx:

345 :
>>344
JRの条件を満たす場合のみ24ステートかかる。満たさない場合は19ステートだ。
ゲーム作るにはNGなコードだな。
>>40 は20ステートで安定動作だからこっち使う。

346 :
おまえほんとにゲーム作ったことあんのか?
仕事でゲーム作るときに条件ごとのステート数あわせなんてしないよ。
ひととおりの処理が済んだらどのみちV-blankまで待つだけだからな。
※PC-8001での音楽再生みたいなフルパワー状態の時は別だが。

347 :
>>346
負け惜しみカコワルイ
vblankに余裕で間に合うような簡単なゲームしか作ったことないのかな

348 :
>>346
負け惜しみカコワルイ
vblankに余裕で間に合うような簡単なゲームしか作ったことないのかな

349 :
何をひとりで勝ちとか負けとか言ってるんだ

350 :
Z80のマシン語を勉強しているのですが
ソース「LD B,10H」とマシン語「06 10」
ソース「LD C,11H」とマシン語「0E 11」
ソース「LD A,0FFH」とマシン語「3E FF」
などソースとマシン語の対応性が見えてきません。
パッと見10,11,FFが共通してるぐらいで。LDときたら最初の二つの16進数が
一定になるのではなさそうですね。
どう対応するのか教えていただけると大変助かります。
よろしくお願いします。

351 :
>>350
Z80のオペコードは、16進数でなく8進数で見ると対応が見えてくる。
「LD B,**H」->「06」->「006」
「LD C,**H」->「0E」->「016」
「LD A,**H」->「3E」->「076」

352 :
>>350
ZilogのサイトにZ80のマニュアルが置いてあるから
それを見れ

353 :
>>351
どうもありがとうございます。
まだピンときませんが対応性を考えて見ます。
>>352
英語読めませんけど翻訳するなり翻訳しなくても
出来る範囲でプログラムの対応性を追ってみたいと思います。

354 :
当時、ガキだったからBASIC視野しかなく、アセンブラやテキストエディタの存在もしらなかったorz...

355 :
age

356 :
お〜懐かしい!
アセンブラか〜 今でも忘れない AD9FFBFA・・・・
おれのCPUは68B09だったからZ80とちがってちーと面倒だったな〜
作画もテープもぜ〜んぶBIOSコールでやるから 何回もAD9FFBFAって
入れたっけな〜。そうそう CPUが2個乗ってたけど
RAMに同時にアクセス出来ないからいちいち片方にハルトかけて
共有領域にコマンド送ってたっけな〜。
した〜けど当時のベーシックって偉大だな〜
WINだって何だって当時のROMBASICの上で
起動してんだもな〜
最近の若いやつぁBIOSがベーシックI/Oシステムだって事知らないんだもな〜


357 :
日本語でおk

358 :
今時の若いもんにしたら暗号だよ

359 :
>>356
当時を知ってるからわかるけど、説明できてない感じ。説明する気もないのかもだけど。
「何言ってるかわかりません」って言われないか?

360 :
'YAMAUCHIコマンド' なんて言ったらもっとわからないだろうな

361 :
どっちかというとググった知識だけで語ってる厨房に見える。
というか、BIOSが何の略か、どんな使い方をする物か程度の事は、門外漢でなけりゃ
若い奴だって当たり前のように知っているぞ。若者なめんな。

362 :
今時BIOSコールしても互換性保てるのなんて、メインフレームくらいじゃないのか

363 :
エディタをベーシックで作ったつもりが、ただのテキストでしかなかった中学時代。
動いてるのか確認がとれないまま脳内逆アセンブルしながらマスターしてしまった高校時代。

364 :
>>356
たぶん同年代?、FM7or8か?
>>359さんの言う通り文意がのたってる
若い人に何かを伝えたいのなら世代間格差を考えないと・・・

365 :
若い人はそもそもこんな板には来ません

366 :
アセンブラなんかやると日常言語まで低級化してしまうんだね

367 :
>>362
今のPC互換機もBIOSコールは最低限の互換があるよ
最近はバグ持ちのBIOSも多くなってきてて困るけど

368 :
>アセンブラなんかやると日常言語まで低級化してしまうんだね
マイクロ命令のレベルにまで行ったら、
一日の大半を会話に使わないかんようになりそうだ
企画書にいたっては、ページ多すぎで、もう読みきれねえよ

369 :
.

370 :
低級の意味がわかってないゆとりw

371 :
59のおっさんが敢えて書く
俺の時代でもハンドアセンブルは必要無かった
知的興味でやった事は有るが(Z80ニーモニック)

372 :
男は黙って2パスアセンブラ

373 :
>>371
バグ取りするのにマシン語そのまんまで直接書き換えとかやりませんでしたか、父上?

374 :
>>371
日高徹氏も59歳だな
35歳で初めてコンピュータに触れて・・・
自分でアセンブラ作ったというからハンドアセンブルはしてなかったようだ

375 :
アセンブラを作る時に、ハンドアセンブルしなかったのか

376 :
MF-ASMを使ってて使いにくいから改造してMF-ASM2を作ったようだし、
アセンブラを使ってオリジナルアセンブラを作ったんだろ

377 :
MF-ASMて懐かしいな
確かアスキーからでた書籍に有った

378 :
>>332
の意味がよくわからないのだが・・・。


379 :
>>378
つまり、18はZ80のJR命令のコードなので
>    △: 18 □
>    ○;
は○に飛ぶなら相対アドレス計算をするのに○-△-2を□に
書くよね、って話だと思う。
C3とかC9とかは覚えてたけど、18はすっかり忘れていた。
ハンドアセンブルだとめんどくさくて相対ジャンプはほとんど
使ってなかったからなー

380 :
MF-ASMか・・・
確か88用だったような・・・
88はモニタにワンラインアセンブル機能があったんで使ったことは無いが(但しインテルニーモニック)
当時でもアセンブルツール(エディタ、アセンブラ、リンカ、デバッガー等当然フロッピーベース)は有ったが20万ぐらいはしたかな?
FDDを持ってても(当時は本体と同じくらいの値段)ツールがない人には有用(ましてテープベースでも使える)
テープベースで使うにはベーシックモニタからソースを全部rem文で記述しセーブ・・・
今はいい時代になったもんだ

381 :
8080系(Z80を含む)のニーモニックは断然ザイログの方が憶えやすい
簡単にいうと理由は
1.インテルの方は使うレジスタによって最初の命令の記述を変えなくてはならない
2.ザイログの方は命令は同一で記述の中でレジスタとかメモリを指定するから楽
まあ結局はなれの問題だが

382 :
>>380
モニタアセンブラは98にも付いてたが、まともなソフトを作るのにはかなり使いにくい代物だった
HIT-88が発売されたのは88の時代が終わりかけの時だったなと

383 :
98のモニタプログラムは大変出来が良かったと思うがな
あれだけでもOSとして十分使えるできばえだったと思う
BASICなんか入れないで、モニタが起動するようにしてあれば
メモリー管理もイメージの扱いも思いのまま
「ああ俺今コンピューター使ってるよ」って気分がしてよさそうなのに
SIMHで遊びすぎかな

384 :
>>383
俺が98を買った時はN88-BASIC86(disk版),MS-DOSが最初から添付(販売店のサービスか?)
DOSでsymbolic debuggerが使えるから必要ないけど
好奇心から何回か試した(結論はまあまあ)

385 :
販売店のサービスでコピーしたのを付けてくれるとかよくあったね

386 :
LD A,00H じゃなくて XOR A とかやってたでしょ

387 :
懐かしいな

388 :
ASCIIのおまけに付いてきたニーモニック表を愛用した。

389 :
やめちゃおっかな・・・

390 :
>>389
人生?

391 :
オレのマイコン人生は
MONリターンから始まったんだな。

392 :
390 名前:ナイコンさん :2009/07/17(金) 01:13:12
>>389
人生?

393 :
>>389
人間?

394 :
なんで上位と下位が逆になるの?

395 :
その方がなにかと都合がいいから

396 :
68系なら、そんな不便などない。

397 :
通信系じゃ都合わるいから68系の方が重宝されてる。

398 :
そいいえばx68kってレジスタ長は32ビットなのに16ビットって聞いた気がするけど実はどうなの?

399 :
32bit環境を視野に入れつつもデータバス幅が16bitである68000を、モトローラは謙虚にも
16bit MPUであると言っているから。8bitからの拡張でしかない16bitとはかなり違う。
プログラマから見た時には問題無く32bit幅のデータを扱える。
MPU側で勝手に上位下位の2回に分けてデータバスを通してくれるから。
2回に分けるという時点でわかると思うけど、速度的にちょっとだけペナルティがつく。
が、2倍以下に収まるので概ね問題無く使える。
16bitなんだと思い知らされるのは、乗算と除算、メモリに対するローテートやシフトが
16bit幅でしかできないくらいかな?(32bit化された68020以降ならできる)

400 :
中央演算装置としては、68系はいいものだったのに。

401 :
>>395
逆というのは16bitのデータがメモリに下位上位の順で格納される事か?
メモリのダンプリストなんかを見るとそんな印象を受けるが
ひと纏まりのデータを下位から順番にメモリに格納するには理にかなったやり方
コンピュータアーキテクチャ上ではちっとも逆でない
>>397
68系はよく知らないがほんとかよ(配列データや文字表示などが面倒になると思うが)
あと通信うんうんも教えてくれ

402 :
>>401
エンディアンのことでしょ。
リトルエンディアンは下位桁が下位アドレス、上位桁が上位アドレスで、要するに桁の拡張がしやすいから。
というか8bitから単純拡張してきてるx86系はそうなる宿命。
ビッグエンディアンは下位桁が上位アドレス、上位桁が下位アドレスで、(左下位、右上位の並びだと)人間の見た目と同じ並びになる。
コンピューターの構造に慣れるとリトルエンディアンでも違和感を感じないと思うんだけどね。
ただ古くからのホストコンピューター(UNIX系が多い)はビッグエンディアンのCPUが使われていることが多いらしく、
通信系の規格がそれに合わせられている関係もあって、そっちの方が正統という見方もあるんだとか。
ttp://ja.wikipedia.org/wiki/%E3%83%93%E3%83%83%E3%82%B0%E3%82%A8%E3%83%B3%E3%83%87%E3%82%A3%E3%82%A2%E3%83%B3
ttp://blog.livedoor.jp/kumiko_seasky/archives/50336130.html
ttp://www.atmarkit.co.jp/aig/01xml/endian.html

403 :
>>402
レスdなるほど
エンディアンという術語は不勉強で初めて知った(最近はアセンブラどころかプログラムもしていない、せいぜいhtmlスクリプト書くぐらい)
通信の話はよく解った

404 :
ビットの番号はLSBを0にするのと、MSBを0にするの、どっちが正統なの

405 :
エイドリアーン!

406 :
>>404
ビットオーダーもバイトオーダーもビッグエンディアンが正統。当然MSBを0とするべき。
大きいって事は良い事だ!ってメリケンさんも言ってるしね。
何よりネットワークバイトオーダはビッグエンディアンだし。

407 :
>>406
サンキュウ
思いっきりスッキリしたよ
ビッグエンディアンでバイトを並べて、左から順番にビットに番号を振ればいいんだね
ごく自然な振り方だね
それに対してリトルエンディアンでLSBを0にすると・・・
バラバラやないかー、まとまりねーな

408 :
リトルエンディアンだと、データ幅が変わってもアドレスが常に同じになるから
そういう意味では便利

409 :
うそつかない

410 :
人間の見た目、ネットワーク上の互換性に合わせるならビッグエンディアン
拡張続きのアーキテクチャの都合、現在普及しているアーキテクチャ(主にIA)と互換性をとるならリトルエンディアン
ということになるんでしょ。
>>407
もはや人間の見た目で自然・不自然とか言ってられる時代じゃないね。
歴史的事情における正統なんてこういう分野じゃ意味無くしてる。

411 :
>>409
warota

412 :
もし、今流通しているアプリケーションのようなものが、「ダンプリスト」で発売されたら、どんなことになるだろう。
カセットサービスくらいはしないと無理か。

413 :
BD-ROMにダンプリストがテキストファイルで保存されていて、
インストーラが実行ファイルに変換して配置する。

414 :
OCR

415 :
ブラウン管式モニター画面に表示したものを写真に撮って印刷してあるので、
歪みが多くてOCRに掛けられない。
放電プリンターで印字したものを印刷しているので、時が途切れ途切れで、
これまたOCRに掛けても読み取りが上手くいかない。
さらに、発売から数ヶ月後に「De bug別冊」として、誤りのあった部分のダンプリス
トが掲載された本が出る。

416 :
Bugの報告はよくあったよな
一度掲載プログラムを入力すると、Bugの報告が出るかも知れないから次号も買う
次号のプログラムも入力するので、Bugの報告が出るかも知れないから次次号も買う
結局何年も続けて購読する羽目になるんだよ
あれは出版社の陰謀だったのでは、なんてことないわな

417 :
あの頃って、バグがあって動きがおかしいので翌月と言うより、リストそのものに誤りが
あって動かないからDe bugに掲載という場合がほとんどだった。
「どうして、記事にする時は動いているのに、リストで出すと動かない間違いがあるんだ?」と
不思議だった。


418 :
def seg の値を変えてくれというのは、機種によってBASICの嵩が変わった事への対応だと思うが
ダンプの修正は def seg のずれからくるジャンプ先の変更とかになるのか?

419 :

そうなんだ!BUG報告は陰謀だったんだ、へー、納得。。。

420 :
ダンプリスト見ながら活字拾ってたんだよ多分

421 :
リロケータブルにしないから〜

422 :
80年ころか
雑誌のダンプリストで
写植じゃなく直接プリンタの印字が印刷されてた(I/Oとか)
Bと8が判別し難かった

423 :
見づらい
I l 1 (大文字アイ、小文字エル、数字の1)とか
, .  (カンマとピリオド)
; :  (セミコロン、コロン) 
Q O 0 (キュー、オー、ゼロ)

424 :
おれは「4」と「A」を良く間違えた

425 :
>>410
文章と数字で書く方向が違うと言うのがそもそもの混乱の元なんだよな
そう考えるとビッグエンディアンが自然とは言い難い

426 :
>>425
お前は数値を書く時、下桁から書くのか?

427 :
たしかに、ビッグエンディアンは人間の感覚にマッチしている。
MC680x0なんかは非常に、アセンブリ言語で組むのに混乱しなくてすむ。
しかし、MC68000のアドレスバスが23本しかないために、
奇数あどれすへのアクセスが直感的にできないのにはがっかり。

428 :
はて?確かにアドレスバスは23本だが、アドレスレジスタは24ビット幅が有効であり、
最下位ビットはワードの上位下位を区別するために使われていて、奇数アドレスの
バイトデータを普通に読み出せるから、極めて直感的にアクセスできるが?
MOVE.B $010203,D0
LEA $C00000,A0
MOVE.W #24-1,D1
LP: MOVE.B (A0)+,D2
DBRA D1,LP
また、命令長が全て2の倍数に揃えられ、ワード単位アクセスが基本になるのだから、
積極的にワード境界をまたいでワードやロングワード単位でメモリへアクセスすべき
理由はどこにもなく、全ての命令とデータを2バイト境界にアラインメントすれば
良いだけの話。むしろ命令長が可変でデコボコしたメモリアクセスをするような設計
スッキリしていると思うが?

429 :
>>428
ご指摘の通り、デコボコしたメモリアクセスを防ぐ方がスッキリしている。
ただ、データが綺麗に2バイト単位でない場合って結構あるけど、どう?

430 :
>>429
どうということはない

431 :
データ構造を自分で設計できるのならば、データ長が奇数であれ偶数であれ、先頭は
必ず偶数アドレスへ配置するようにすれば済む。奇数だった場合は1バイト余る。
ただそれだけの事。
バイトとワードが混在して詰め込まれてるような酷い設計のものを扱うときは、
仕方ないからバイト単位で扱えばいい。

432 :
>>431
言っていることは正当であるけど、
8ビット野郎としてはバイトとワードの混在は少ないメモリの習慣で……。
仕方なくバイト単位で扱うと、せっかくの16ビットバスがもったいないような……。
かといって、x86系は使いたくないし。

433 :
8ビット野郎は8ビットの頭しかないよ

434 :
ビットフィールドならまかせてくれ

435 :
>>432
おまいはデータ構造が複雑になるとプログラムができないことを自白しているんですねわかります

436 :
>>432
ヒント: .even

437 :
俺がリアルにハンドアセンブルしたのは8ビットの頃だけだな16ビット以上はアセンブラ使ってた

438 :
普通にMASMがどこにでも転がってたからなw
1つの機種、1つのOSでまとまるのも悪くないと思ったよ

439 :
MASMが転がってたところなんて見た事ねえ。

440 :
当時のMS-DOSのシステムディスクにMASMがついていた(別売りの機種もある)

441 :
3.0を最後に付いてない。

442 :
HASとDISならフリーでダウソした

443 :
フォースフィールドならまかせてくれ

444 :
話はもどるが、>>436 にあるように、奇数アドレスでも.evenつけとけば偶数アドレスに
直してくれるから >>429 の発想じたいが68でプログラム組んだこと無いってことがよくわかる

445 :
>>441
ホント?
それで添付エディタはEDLIN?
えらいアンバランスだな

446 :
普通にmifesががどこにでも転がってたからなw
1つのアセンブラ、1つのエディタでまとまるのも悪くないと思ったよ

447 :
雑誌の付録かなんかでredがついてたし、それまでCでエディター自作してた

448 :
>>447
ソース書くのに使用したエディタは?
それともクロスコンパイル?

449 :
>>448
最初だけ紙にかいてからEDLIN

450 :
>>449
ほんとにEDLINを使ったことある?
デバッグはDOSに付随してるdebug.exeで出来るが
ソースの修正は一行づつしか出来ないし
その都度セーブしないと結果が反映されないしろものだぞ

451 :
なにか問題でも?

452 :
真のハッカーは道具を選ばない。自分の環境でできる事をやる。
市販エディタの違法コピーをもらってきて使いやすいだの何だの言うような雑魚とは
違うって事さ。

453 :
なら一生江戸燐使ってれば
道具を選ばないんだろ?

454 :
>>450
その苦痛から開放されるためのエディターをEDLIN使って作ったと
なんかおかしいこと言ってるか?

455 :
ちなみにRS-232Cで88から転送ってのもやったし、一太郎3.1でテキスト保存とか
QBの編集環境も使ってた
EDLINが使いにくかったからエディター自作したんじゃねーかよ>>450はアホか?

456 :
高度な技術を持つ諸君が、低度な罵倒のしあいとは、見苦しいですぞ。

457 :
PCなんか無くてもハンドアセンブルできる俺最強

458 :
書いてもしょうがないが・・・
>>454;>>454は所謂夏厨としか思えないorz

459 :

自分用のニーモニックで書いてた人! はーい!

460 :
専用の原稿用紙みたいなものがあったなー。

461 :
道具を選べるほど選択肢が少なかった昔と今は環境も違うし
すぐ道具がないからできないと言って力の無さを道具のせいにするなってことだろ

462 :
普通は道具がある機種を初めから選ぶ
道具のない機種を選んで四苦八苦するのは自業自得

463 :
道具を使うための道具が無いと何もできない低脳がいるようだ

464 :
ならOSからツールから全部自分で作れば?
目の前に窓機があっても絶対使うなよ

465 :
>>462
おっさん・おばちゃんだらけのこの板で何を語ってんだか。
ニワカ乙。

466 :

HAL9000って、
次期自分の改善された分身を考えて作れないのかな?
自動的に回路を工夫して適切に改善して、
動作も妥当性を考えられるようなロジックを
自動で生成する、前機能の改善機能が自分で
組める自己のロジックを自動で改善する
自己改善生成器

467 :
>>464
なんだ子供か

468 :
はじめからワープロとか表計算とかゲームとかいっぱい入ってる機種とは
どのメーカーのなんて機種でしょうか?

469 :

FとN

470 :
昔はこっそりソフト満載インストールして売っていた所もあったみたいだしな

471 :
Windows 95 or MS-DOS
Windows 95 or Windows 3.1 or MS-DOS
( Lotus 1-2-3 and 一太郎 ) or ( EXCEL and WORD )
なんて時代もあったな。

472 :
FとNがふっとんだ

473 :

当時の主流
F、N、C、D、I、S、S
その他
P、H、G、S、・・・


474 :
機種名がわかりませんが?

475 :
マイフェースが買えなくて
needといフリーのエディタ使ってた
結構便利だった

476 :
マイフェス
懐かしすぎだって!(笑)

477 :
今でも使ってるよ

478 :

先生の目をうかがいながら
オーガスタしてマイフェス

479 :
レッドじゃあないのか?

480 :
SHIFT+HELPで、一瞬にしてマイフェスでソース編集してるっぽい画面。

481 :
ボスがきた?

482 :
CALL : CD

483 :
20MBのHDDが20万円の時代

484 :
SASI接続

485 :
SXSIってSCSIとSASIの両方使えたよな

486 :
66467285156249

中学生が 自主制作RAV 売り捌いてたらしい ★12
http://yutori7.2ch.sc/test/read.cgi/news4vip/1256682280/

まとめwiki
http://www31.atwiki.jp/shotakon_pachinkas/


748779296874999

487 :
5インチ2Dを10枚セット\5000で買ってたのは思い出したくない

488 :
DOS時代だが
添付されてるエディタがEDLINなので
config.sys,autoexsec.batを書くにもめんどくさかった
友人からmifesを入手し(違法コピー、本体のみ)目から鱗
masm,ms-c(これも違法コピー)で本格的にプログラミングが出来るようになった
WINに移行するまで愛用、現在でも有るようだが・・・
ちなみに今常用にエディタはEmEditor(フリー版)w

489 :
488訂正
DOS時代だが
添付されてるエディタがEDLINなので
config.sys,autoexec.batを書くにもめんどくさかった
友人からmifesを入手し(違法コピー、本体のみ)目から鱗
masm,ms-c(これも違法コピー)で本格的にプログラミングが出来るようになった
WINに移行するまで愛用、現在でも有るようだが・・・
ちなみに今常用のエディタはEmEditor(フリー版)w

490 :
×本格的にプログラミングが出来るようになった
○本格的に犯罪が出来るようになった

491 :
DOS時代のフリーウェアなんて、
違法コピーのエディタやコンパイラで作られたものも多いんだろうね。

492 :
コンパイラはLSI-Cの試食版で十分。
バイナリエディタでマシン語をガーッと入力していってもいいし。
エディタだってフリーのがそれなりにあったし。
わざわざ違法コピーする理由がどこにもない。

493 :
PC-9801F2時代に、FFTをハンドアセンブルで作った。原本はFORTRANソースから。
モニタプログラムから逆アセンブルでき、一応ステップ実行やレジスタダンプなど最低限のことできた。

494 :
PC-9801F2時代に、FFTをハンドアセンブルで作った。原本はFORTRANソースから。
モニタプログラムから逆アセンブルでき、一応ステップ実行やレジスタダンプなど最低限のことできた。


495 :
最低っていうな
F2のモニターはOSだろが

496 :
Z-80ならOh!誌のおかげでほぼフリーに近い価格(雑誌代だけ)のアセンブラがあったけど、
PC-98は無かったのか?

497 :
98はモニターにアセンブラ、ディスアセンブラ機能があったからな
64KByte またがる命令はサポートされていなかったけど
まあどうしてもって言うなら DOS 買って debug 使えば十分だったし

498 :
PC88のモニタにもアセンブル/逆アセンブルの機能があった。
けど8080ニモニックだったので、Z80から覚えた俺は使う気になれなかった。

499 :
ああそうだ、88はひどかったね
Z80コンパチならザイログ表記が当然だと思うんだが
NECは何を考えてあんなのにしてしまったんだろう


500 :
>>499
Z80が標準になってからも、CP/Mは8080のアセンブラしかついてなかったからね。
MACRO80とか別売りだったし、そんなもんでしょ。

501 :
そのくせ相対ジャンプだけはサポートされてたけどね。
JRNC xxxxとか、勝手に付け足したニーモニック。

502 :
3.3cの拡張キットにMASMはいってなかったな
なのでTASMかってきた

503 :
MASMは3.1の途中までではなかったか?
3.1は複数あったはず。
今日Windows32アセンブリの古本買ってきた。
まだ見てないがMASM32てあるんだね。

504 :
125〜129の頃かな。
少なくとも011には付いてなかった。
仕方なくLSI-CのR86使ってたよ。

505 :
3.1まであったのか〜
付属のソフトはTASMセット買ったので使わなかったけど
付属の本がよかった

506 :
システムコール解説は充実してたね。
特にEMSの解説は気合が入ってた。というかLIMの資料丸写しだけど。

507 :
オレはナショナルセミコンダクタのSCANFとかいうCPU
とTTLと256バイトのスタティックメモリーで自分の計算機
を作って、アキュムレータをインクリメントして出力ポートに
出力し、LEDをピカピカさせるプログラムを機械語でつくった。

508 :
SC/MPでなくて? 見たことも無いですが、
安田寿明先生三部作の記憶です。

509 :
さすがに現在ではプログラム全体をアセンブラで書く事はないだろうが
個々のモジュールに関しては手動でアセンブラチューンを施す事もあるのかな?

510 :
今ではコンパイラが吐き出したコードを見て、
こんな命令もあるのかと思うことばかりになった

511 :
windowsの時代に入ってからもフルアセンブラでやってる人達はいるよね
自分も細々とはやってたし
昔は自分でヘッダコンバートとかしたり試行錯誤もたまにしたけど
最近なら環境も資料も豊富だしやろうと思えばできるね
まあとは言ったものの自分も趣味ではたまにやって楽しむことはあるけど
最近はSSE関連で使うくらいだ

512 :

 ワシはBASICしかしらないけどマシン語を扱えるツレを見て覚えてる事は
「8ビット時代のハードは、メモリが少なくて単機での開発環境構築が辛そう」
  かな、
PC88で大きめのプログラムを作ってるときだったかな・・・・・
  なんか PC98でC言語でまずソース書いて、コンパイルテスト後、
 PC88に直接マシン語を書いてたり、PC88とPC98とで、RS232Cで繋いで
 PC98でアセンブル(機械語化?)して88に転送してました。
 

513 :

書込みで転送してしまった・・・・
 謎なのは ツレは98と88で転送が出来るのに、わざわざ98でCを書き、88でハンドアセンブルしてる意味が
未だにわかりません。

514 :
とうりかかったので。1res増やしとく

515 :
なんでやねん

516 :
素人なのでVC++とか勉強したあとで、某サイトでmasm32をDLして
試したときは目からウロコでした。Win用exeがこんなに小さく作れるのかって驚き
でもmasmの違法配布とかでその後もめたらしいけど
自宅でTK-80とかFM-8とかいじってた頃は、アセンブラのことなんてサパーリ×
PC-9801に移ってからも assumeの意味が理解できずw
いつもdebugで手で打ち込む始末 orz
まぁそれでも、機械語の表を目で追ってhexに脳内変換するよりは楽だけど
忍者テスト&保守兼用の駄文ゴメン

517 :
保守

518 :
assume
入門書だと「おまじない」って言葉でごまかしているからね

519 :
アッザムの事だと思ってたよな

520 :
>大阪府三島郡島本町の小学校や中学校は、暴力イジメ学校や。
島本町の学校でいじめ・暴力・脅迫・恐喝などを受け続けて廃人になってしもうた僕が言うんやから、
まちがいないで。僕のほかにも、イジメが原因で精神病になったりひきこもりになったりした子が何人もおる。
教師も校長も、暴力やいじめがあっても見て見ぬフリ。イジメに加担する教師すらおった。
誰かがイジメを苦にして自殺しても、「本校にイジメはなかった」と言うて逃げるんやろうなあ。
島本町の学校の関係者は、僕を捜し出して口封じをするな
子供の時に受けた酷いイジメの体験は、一生癒えない深い傷になる
「暴力とイジメと口裏合わせと口封じ」の町やそういう町に巣食うヤクザ・チンピラ・ゴロツキ・不良・
いじめっ子・殺人鬼・ダニ・ノミ・シラミなどを監視して非難するのは暮らしやすい町を作るのに必要だ

521 :
WindowsだけがOSではありませんよ、最新64bit OSに触れるチャンス!
・ Menuet OS [ http://www.menuetos.net/ ]
 WindowsにもLinuxにも依存しない独立型最新64bitOS。
 Flat Assembler標準搭載、アセンブラでプログラミングをするコトが前提の、異彩を放つ開発環境。
 システムコールが公開されていて、アセンブラから自由に呼び出せる。
 フロッピー1枚で起動でき、HDDを必要としないコンパクトサイズ。
・ Flat Assembler [ FASM: http://flatassembler.net/ ]
 Menuet OS標準搭載のコンパクトサイズのインテルニーモニック64bitアセンブラ。
 Windows版も用意されている。

522 :
イラストレーターで収入が少ないからと30代後半で漫画家になろうとする、ひきこもりのバカ発見。
足立区に住んでいるそうだ
http://inumenken.blog.jp/archives/7002197.html

523 :
アセンブラが買えないのでノーブラです

524 :
毎回ハンドアセンブルは面倒なので、ソースコードBASICなアセンブラを作った記憶はある。

525 :
BASICで作ったアセンブラでアセンブラを作った

526 :
既成ルーチン呼び出すだけなら紙に書けば充分だよね。
…ところでテクニック集の本が行方不明なんだけど、
どっかネット上で定石を分類しているようなサイトってないんだろうか?
言語比較的な所はよくみかけるんだけども。

527 :
アセンブラ?
Z80のなら探せば日本語以外で結構あるもんだよ

528 :
>>13
もう50歳超えちゃったのね

529 :
(今更ながら・・・)
>>40の5バイトコードは
いったん Lを足して
後で Lを引くことが、ミソ(工夫)なのか?

530 :
>>529
普通に書くと
ADD A,L
LD L,A
LD A,0
ADC A,H
LD H,A
のところが1バイト短く(3クロック少なく)できてる。

まぁもっと普通に
ADD A,L
LD L,A
JR NC,skip
INC H
skip:
で良いような気もするけど…でもJRが使えない8080の場合は>>40の方が短くて良いのかな。

531 :
>>530
解説ありがとう

532 :
>>524
アセンブラをインタプリタでBASICにしてBASICでアセンブラを作ってアセンブラで使う、というのは
火力でモーターまわして電気作ってその電気使って電気ストーブ使って火を起こす、という感じで
効率的には非効率で回りくどい事になるんだけど実際はそれが一番手っ取り早いという皮肉だなw

533 :
その例えは違う

534 :
BASICで作ったアセンブラでアセンブラで作ったアセンブラをアセンブルするんじゃないの?

535 :
BASICで作った電気ストーブでモーターまわして
電気で作ったインタプリタでBASICで使う、というのは
火力でアセンブラを電気という感じでアセンブラにして
アセンブル作ってアセンブラ使ってアセンブラを起こす、
そのBASICで火を作ってアセンブラ使って
アセンブラをするんじゃないの?

536 :
アセンブラの段階をすっとばしてBASICでコンパイラを作った記憶ならある。
もちろん最初にコンパイルするプログラムはコンパイラ自身だったけどな。
コンパイル時間はMSXで3日かかったが、コンパイル済みのバイナリを100MHz
pentiumで実行したら20秒くらいだったな。

537 :
いい忘れていたが、ターゲットのCPUはZ80とX86の2種類だった。

538 :
 

539 :
ここの住人なら、アセンブラ位自作してるだろ。

540 :
BASICで作ったアセンブラでアセンブラを作った

541 :
昔、8080マシン語レベルのリロケータブルローダー作ったな
アドレス参照のみ2文字のシンボルが使えるやつ
参照個数の制限はあるけど前方参照も可能
ロード開始時に必要なら先頭アドレスを指定する

コードは16進数で記述し、
ラベルは #xx
参照は :xx

--------------


3E 00
#LP
CD:WR
3C
C3:LP

#WR
D3 10
C9
--------------

542 :
LABEL:JR LABEL

無限に終わらない。

543 :
18 FE だな。(Z80)

544 :
RST 38H

545 :
C3 >>1
昔に戻りたい、老眼辛れーわ(苦)

546 :
>>539
さすがに自作はしなかった。
Oh!MZのアセンブラなら雑誌代と手間だけで手に入れられたし

547 :
OhMz読者って・・・

548 :
AF (Z80)
ゼロになろーぜ!

549 :
XOR A だっけ?

550 :
PC88でMON

551 :
64KBメモリは広大だわ

     Z80

552 :2019/11/21
https://akiba-pc.watch.impress.co.jp/docs/sp/1213044.html

記事にハンドアセンブルの話が出てるな。

●    不思議の森のアドベンチャー    ●
昔のシステムをフリーウェアにしてもらおう!
橋本環奈について語る
昔のPC板に相応しいトリップ
これあげる、交換して
●    不思議の森のアドベンチャー    ●
厨房のころ電気屋のPCでやったこと教えろ
今でもX680x0ユーザー全員集合 Part 77
メモリ容量を自慢するスレ
このPCのCPU交換できる?
--------------------
【輪郭矯正】小顔整体2【頭蓋骨矯正】
騙されずダム板に飛ばされたわけになる方法
【グラサマ】グランドサマナーズ part51
☆★★ビルメンテナンス(設備)Part.358★★★
【アクションカム】 GoProシリーズr62 【ウエアラブル】
修羅の門&修羅の刻 28勝目
5万で最高の鯖を作るためのスレ
【詐欺師?】マメボーw専用スレ【SEO神?】
歯科技工士☆令和時代 第71期
双子座&乙女座 Part.2
【福岡】今暇突発オフスレッドPart200
☆★東京五輪は旭日旗で世界の人をお迎えしよう★★
【腐女子カプ厨】ホモ水泳雑談1555【なんでもあり】
自称トップブリーダー真実は素人ブリーダーの悪魔のポルンガを見守るスレです
【悲報】今回の地震、かなりやばかった
ローソン100神すぎる 弁当が210円
■■■■■■■■■■■ピャッ■■■■■■■■■■■
☆フェルナンド・アロンソ Part77☆
欠史八代とは何だったのか?
【大事なのは】CMS総合スレ3【中身だろ!】
TOP カテ一覧 スレ一覧 100〜終まで 2ch元 削除依頼