1,041
edits
Changes
→挿入モード:
ALASMは複数のソーステキストを同時に処理できます。 各テキストは、独自のメモリページにあります。 PAGE [ページ]またはssENTER(リストから)を使用して、編集するテキストを選択できます。 ページは、メモリマスクを使用して、上位メモリドライバと同様に列挙されます。 ページ番号の下位3ビットは、ポート#7FFDのビット0〜2と常に同じです。 ALASMがロードされると、ページ番号の8ビットすべてでメモリをテストします。 XXXX kBマスクXXとして画面が表示されます。これは、ALASMがXXXX kBのメモリを設立し、XXのビットがページの変更に使用されていることを意味します。 これらのビットは、PAGEなどのページをマスクするために使用されます。スタックアドレスは#6dffを超えてはなりません。 ALASMは#8000-#bfffにあります。 #8000-#bfffにコンパイルすると、システムページにコンパイルされます。 プログラムを実行するかALASMを終了するか、デバッガーを使用すると、#8000-#bfffがシステムページに切り替えられるため、プログラムがその場所に設定されます。 ALASMは、IMPORT、EXPORT、およびMOVEに低メモリを使用します。 コンパイルはスタックを広範囲に使用します。
BREAKを押すと、コマンドを中断できます。 コマンドが変更されたテキストを失う可能性がある場合、コマンドは保存を要求します。
Quit [アドレスaddress] [、ページ,page]を終了
ALASMを終了します。 パラメーターが指定されていない場合は、RETを介して終了し、それ以外の場合は「ページ」の「アドレス」へJP
STS7.0にジャンプします。 (#db06、セットアップで指定されたページ)
Run [アドレスaddress] [、ページ,page]を実行
プログラムを実行します。 デフォルトでは、「アドレス」=最後のORGアドレス、「ページ」= 0。
ファイルを現在のページにロードします。 デフォルトでは、拡張子は「H」です。 「ファイル名」にはワイルドカードを含めることができます(カタログを参照)。 この場合、最後のファイルフィッティングがロードされます。 「ファイル名」が指定されていない場合、ユーザーはリストからファイルを選択します。
現在のソーステキストの名前を変更します。
現在のページのテキストを編集します。 ファイル名を指定すると、この名前のファイルが現在のページにロードされます。 ディスク上に存在しない場合、メモリ内に作成されます。
指定したソーステキストを現在のソーステキストの末尾に追加します。
算術式を評価します。
マスクまたは値別にラベルのリストを表示します。 アセンブリ後にのみ機能します。 <number>-ラベル値NoDef-ラベルは割り当てられていないが使用されていたMacro-labelはマクロ名であるWrong-コンパイルエラーのためにラベルが未定義です。
現在のソーステキストをアセンブル(コンパイル)します。
現在のソーステキストをディスクに保存します。 「+」を追加すると、変更されたすべてのテキストが保存されます。 「!」の場合 その後、メモリ内のすべてのテキストが保存されます。
TR-DOS MOVEを実行します。 #7400より低いメモリを使用します。
メモリ内のバージョン番号、システムページのリスト、およびファイル(テキスト)のリストを表示します。 変更されたテキストは「+」でマークされます。 コンパイルエラーのあるファイルにはエラーカウントがあり、他のファイルには最初の行が表示されます。
指定されたページが最新になります。
指定されたドライブが最新になります。
パラメータがない場合、現在のテキストをスキャンして、ディレクティブ「-」を「+」に変更します(この操作は、すべてのソーステキストの読み込みでも実行されます)。 「+」を追加すると、メモリ内のすべてのテキストがスキャンされます。
ALTERとも呼ばれます。 カーソルキーを使用してメモリ内のファイルを選択できます。
現在のテキスト(または「+」の場合はメモリ内のすべてのテキスト)を削除します。
現在のソース(または「+」の場合はすべて)をプレーンテキストに変換し、ディスクに保存します。 プレーンテキストはCRであり、CR + LFではありません。
エディターには、編集用のほとんどの画面と、現在のページとファイル名が表示されるステータスの下の行、このページの空き領域、マーク/削除された行バッファー(ポケット)のサイズ、およびテキストサイズと編集モード(Ins / Ovr)。
エディターコマンドリスト(Caps Shift + Symbol Shiftの拡張キー):
カーソルの直後の位置からテキストの終わりまで検索します。 検索はssIで繰り返すことができます。ssIは、現在の位置から開始するか、カーソルが最後にある場合は先頭から開始します。 検索文字列が指定されていない場合、古い検索文字列が使用されます。
定義されたラベルを検索します(つまり、行の最初にあります)。 labelnameには、ラベルの最初のいくつかのシンボルを含めることができます-これで始まるすべてのラベルが見つかります。
string1を検索してstring2に置き換えます。 交換を求めます:Y-はい、N-いいえ、さらに検索、G-はい、さらに詳細、BREAK-停止。
指定されたコードでシンボルを挿入します。 XXXは、カーソルの下のシンボルコードを示します。
カーソルの後にポケットデータ(マークおよび削除された行)を挿入します。 ポケット追加フラグをリセットして、次のポケット操作でポケットをクリアします。
ポケットをクリアします。
編集モードの変更:挿入して上書きまたは元に戻します。 状態は構成を介して保存できます。
現在の行の変更を元に戻します(カーソルがまだ移動されていない場合)。 それ自体で元に戻すことができます。
行にテキストが含まれていないすべてのラベルを表示します。 これらは通常、プロシージャ名です。 ユーザーは、カーソルキーとEnterキーを使用してそれらの間を移動したり、BREAKしたりできます。
コンパイルアドレスを設定します(DISPシフトに関して)。 デフォルトでは、ページは以前に別のORGで言及されたページです。 アセンブリの開始時は0です。
label EQU valueラベルを値として定義します。 valueラベルを値として定義します。 値は、評価される式である場合があります。 既存のラベルを再定義するには、label = valueを参照してください。
プログラムのワークアドレスを設定します。これは、コンパイルされたワークアドレスとは異なる場合があります。
ENT
プログラムの作業アドレスを現在のコンパイルアドレスに設定します。 例:SCREEN 例: SCREEN EQU#4000 ORG #8000 LD HL,BEGIN ;Source: routine LD DE,SCREEN ;Destination: screen area LD BC,END-BEGIN ;Size: routine size LDIR ;copy CALL SCREEN ;call it DI HALT ;hang forever BEGIN DISP SCREEN MARKA DEC A HALT JP NZ,MARKA ;we use JP and it works RET ENT END この方法で現在のDISPシフト(shift = org-disp)を取得できます:
a ORG 0 ORG#8000ENT LD HL、BEGIN;出典:routine LD DE、SCREEN;宛先:画面領域 LD BC、END-BEGIN;サイズ:ルーチンサイズ LDIR;コピー 通話画面、それを呼び出す DI HALT;永遠にハングアップ ORG a + shift DISP SCREEN MARKA DEC Aを開始a
LDIRがアセンブルされ、次にページ1にロードされる「TOKENIZE.H」ソース、OTDR、現在のソースの上にロードされる「ALASM2.H」ソース、次に現在のソースが再ロードされます。ディスク(前に保存することを忘れないでください)、HALTから続行します。
ASSEMBLEが実行されると、コンパイルはページ6にあるMAKE6 * 7ソースから開始されます。これは、MAINとLDIRを含むこのマイナーユニットを含むことになっています。 INCLUDEされると、MAINディレクティブは無視され、LDIRからコンパイルが続行されます。
INCBIN "drv:filename" [、size,size]
ディスクからロードされたsizeバイト(またはディレクトリで指定されたサイズ)のコードブロックをコンパイル済みコードに含めます。 ディスク上のファイルがサイズよりも長い場合、部分的にロードされます。
DUP <番号>
コンパイル中に何度も繰り返されるブロックの始まり。 数値はいつものように表現することができます。
このブロックの終わり。 DUPは別のDUP内にある可能性があります。 例:
このブロックは32回コンパイルされます。 ラベルで構成されるカウンター(label = valueを参照)を使用でき、条件付きコンパイル分岐を使用できます。
<expression>が0になるまで<body>を繰り返します。
DEFBと同じ。 バイトは式である場合があります(結果の下位バイトが使用されます)。 例:
DEFWと同じです。 例:
DW ALASKA、BUFFER、12、#BD15ALASKA,BUFFER,12,#BD15,32767,32767、.NUMB1 DEFW 12345,34567
DS howmanytimes [、bytes]
DEFSと同じ。 バイト(デフォルトではゼロバイト)は、指定された回数だけ現在のコンパイルアドレスに挿入されます。 例:
DD [#] hexbyte [hexbytes]
16進バイトをコンパイルします。
DD 1D4FDC、42231D4FDC, 4223は、以下と同じです DB #1D, #4F, #DC, #42, #23と同じです
行サイズ=#2C ..#2Fでは使用しないでください! ディスクからテキストがロードされた後、行の先頭で「+」がスキャンされます(「-」は「+」になります)。 コンパイルはこれらの行をコンパイルし、「+」を「-」に変更して、2回目にコンパイルしないようにします。 例:
STSは最初のアセンブリでのみロードされます。
label = expressionラベルを定義または再定義します。 例:SHLUSS = 0expression ラベルを定義または再定義します。 例:
#8000の後のメモリは、単語0..16384で埋められます。
IF0 <式>
<body1>
[そうしないと ELSE
<body2>]
ENDIF
IFN <式>
<body2>
[そうしないと ELSE
<body1>]
ENDIF
反対。 254層までの条件付きコンパイル内の条件付きコンパイルが可能です。
<本体>
ENDL
ローカルラベルブロック。 この構造内のすべてのラベルは、外部では見えません(@で始まるグローバルラベルを除く)。 LOCAL内のLOCALは許可されます。 ラベルがLOCALブロック内で定義されているが、このラベルが外部からアクセスされた場合、グローバルになります。
<マクロ名> [パラメーター1 [、パラメーター...]]
マクロを使用します。 パラメーターはコンマで分割されます(引用符で囲まれたコンマはカウントしません)。
これは、画面アドレスを現在の行よりも下の行にカウントする一般的なDOWN HLまたはDOWN DEルーチンです。 このタイプの条件の使用:
アセンブリ中にメッセージや数字を表示します。 / D、/ H、および/ Aキーは、1つの次の番号の出力形式を定義します。 キーなしの番号は現在のシステムに表示されます(configを参照)。 / D-10進数、/ H-16進数、/ A-両方のシステム。 / Lは、行リードおよびキャリッジリターンなしで、古い行に表示することを定義します。 / Tは、指定された式とその値を示します。 例:
DISPLAY / A、 "abc + xyz"、abc + xyz
アセンブリ中に指定されたルーチンを呼び出します。 すべてのポストラベルはまだ評価されていません。ALASMは#8000です。
フォント「FONT *」#9c40、#400(#8045、#3f0)をロードします。
ALASMの起動時に最新になるページ。
非アクティブのときにALASMが存在する場所。
組み立て中にラベルを含み、その後使用できるページ。 ラベルに4ページが必要ない場合は、左から未使用のページをゼロにします。 使用される最初のページは右端のページです。 ラベルページは端から埋められます。
組み立て中に投稿ラベルが含まれ、その後使用できないページ。 定義する前に使用されるラベルを評価するためのデータが含まれています。 使用される最初のページは右端のページです。 ポストラベルページは最初から埋められます。
コピーバッファー(ポケット)を含むページ。 アセンブリはそれをクリアします。 Postと同じ場合があります。
上位メモリのドライバーを設定します(#7000、#FF)
sts70r .C-デバッガー
gruzilka.B-ドライブBのローダー
128灰RV .C-128kメモリドライバーPENTDRV 128kメモリドライバー PENTDRV .C-ペンタゴン512kメモリドライバーP1MBDRV ペンタゴン512kメモリドライバー P1MBDRV .C-ペンタゴン1MメモリドライバーP4MBDRV ペンタゴン1Mメモリドライバー P4MBDRV .C-ペンタゴン4M、または追加配線なしの2M(#FDおよび#AFF7を使用)ATMDRV FDおよび#AFF7を使用) ATMDRV .C-ATM 1MメモリドライバPROFDRV 1Mメモリドライバ PROFDRV .C-PROFI 1MメモリドライバZSKAY5121Mメモリドライバ ZSKAY512.C-SCORP / KAYメモリドライバ(KAYで512kを使用)KAY1DRV KAYメモリドライバ(KAYで512kを使用) KAY1DRV .C-KAY 1MメモリドライバSCORP1M 1Mメモリドライバ SCORP1M .C-SCORP 1Mメモリドライバ al50stri.H-ALASM形式の説明 Fnt42Bld.H-画面から#3f0 ALASMフォント形式 REFNT42 .Hへの6x7(6x6)フォントコンバーター-逆 H_Search.B-破壊されたディスク H_Search.WのALASMソースを検索します Marazm.H、Humor.H、Humor.C指定された範囲の擬似乱数を返すRANDOMマクロの使用例。 SNAKE.H組み立てながらプレイするゲーム。 TASM用にこれを作成したRST7のクレジット。
v4.44の非互換性:ページ番号のないORGはページ0を設定しません。マクロパラメーターは\ではなく、:DB "" "、0はDB" ""、0 "を意味します。DB34,0またはDB" ""を書き込みます。 "、0