定義

多くのシステムが G0/G1 などを共有しますが、完全に統一されたプリンター言語ではありません。Marlin の機能はコンパイル設定に依存し、Klipper は共通サブセットと名前付き拡張・マクロを組み合わせ、RepRapFirmware は設定にも G-code を広く使い、CNC 制御には独自のモーダルグループがあります。

スライサーでフレーバーを選ぶと出力が変わります。これは意図した対象の証拠ですが、実機に入っているファームウェアの証明ではありません。メーカー派生版、機械プロファイル、後処理、カスタムマクロがファイルや動作を変えるため、Marlin と書かれたヘッダーから言えるのは Marlin 互換出力を意図したことまでです。

実際に重要なこと

出力上の契約

フレーバーは対象制御装置向けのコマンド形式と既定値をスライサーに選ばせます。

同じコードでも意味が違う

G28 はプリンターでは原点復帰、CNC では保存済み基準位置への復帰になり得ます。

拡張も方言の一部

Klipper の名前付きコマンド、RRF の式、メーカー命令、ユーザーマクロは環境固有です。

ファームウェアの指紋ではない

プロファイル名やコメントは実機の版、機能、マクロを証明しません。

G-code での例

一つの概念、互換でない三つのコマンド

; Same concept, different dialect-specific commands
M900 K0.18 ; Marlin Linear Advance
SET_PRESSURE_ADVANCE ADVANCE=0.04 ; Klipper
M572 D0 S0.10 ; RepRapFirmware

各行は別ファームウェアの圧力補正設定です。名称と数値を同等の構文としてコピーできません。

このビューアーで確認できること

このビューアーでは

ビューアーはテスト済みのコマンドだけを処理し、明示的なコメントから一部スライサーを識別します。フレーバー名から実機ファームウェアを認証せず、未知のマクロや制御装置固有動作はモデル化されない場合があります。

一次資料

この説明は、ファームウェア資料と G-code から直接確認できる情報に基づきます。実機の最終動作はプリンター設定によって決まります。