.\" SPDX-License-Identifier: MIT .\" .Dd August 1, 2026 .Dt RGBASM 1 .Os .Sh "نام (NAME)" .Nm rgbasm .Nd اسمبلر Game Boy .Sh "خلاصه دستور (SYNOPSIS)" .Nm .Op Fl EhVvw .Op Fl B Ar param .Op Fl b Ar chars .Op Fl \-color Ar when .Op Fl D Ar name Ns Op = Ns Ar value .Op Fl g Ar chars .Op Fl I Ar path .Op Fl M Ar depend_file .Op Fl MG .Op Fl MC .Op Fl MP .Op Fl MT Ar target_file .Op Fl MQ Ar target_file .Op Fl o Ar out_file .Op Fl P Ar include_file .Op Fl p Ar pad_value .Op Fl Q Ar fix_precision .Op Fl r Ar recursion_depth .Op Fl s Ar features Ns : Ns Ar state_file .Op Fl W Ar warning .Op Fl X Ar max_errors .Ar asmfile .Sh "توضیحات (DESCRIPTION)" برنامه .Nm یک فایل شیء RGB از یک فایل منبع اسمبلی ایجاد می‌کند. قالب فایل شیء در .Xr rgbds 5 مستند شده است. .Sh "آرگومان‌ها (ARGUMENTS)" .Nm گزینه‌های معمول کوتاه و بلند مانند .Fl V و .Fl \-version را می‌پذیرد. گزینه‌هایی که جلوتر در خط فرمان می‌آیند، بر گزینه‌های قبلی برتری می‌یابند، مگر زمانی که گزینه‌های تکراری یک خطا تلقی شوند. گزینه‌ها را می‌توان تا زمانی که مخفف بدون ابهام باشد خلاصه کرد: .Fl \-verb همان .Fl \-verbose است، اما .Fl \-ver نامعتبر است چرا که می‌تواند معادل .Fl \-version نیز باشد. .Pp مگر اینکه خلاف آن ذکر شده باشد، ارسال .Ql - (یک خط تیره تنها) به عنوان نام فایل باعث می‌شود .Nm از ورودی استاندارد (برای فایل‌های ورودی) یا خروجی استاندارد (برای فایل‌های خروجی) استفاده کند. برای لغو این رفتار و باز کردن فایلی در دایرکتوری جاری که واقعاً نام آن .Ql - است، از .Ql ./- استفاده کنید. استفاده از ورودی یا خروجی استاندارد برای بیش از یک فایل در یک دستور واحد ممکن است نتایج غیرمنتظره‌ای ایجاد کند. .Pp .Nm اعداد ده‌دهی، شانزده‌شانزدهی (هگزادسیمال)، هشت‌هشتی (اوکتال) و دودویی (باینری) را برای آرگومان‌های عددی گزینه‌ها می‌پذیرد. اعداد ده‌دهی به شکل معمول نوشته می‌شوند؛ اعداد شانزده‌شانزدهی باید پیشوندی با .Ql $ یا .Ql 0x داشته باشند؛ اعداد هشت‌هشتی باید پیشوندی با .Ql & یا .Ql 0o داشته باشند؛ و اعداد دودویی باید پیشوندی با .Ql % یا .Ql 0b داشته باشند. (پیشوندهای .Ql $ و .Ql & احتمالاً نیاز به گریزدهی یا نقل‌قول دارند تا توسط شل تفسیر نشوند.) صفرهای ابتدایی (پس از پیشوند مبنا، در صورت وجود) پذیرفته می‌شوند و حروف به بزرگی و کوچکی حساس نیستند. برای نمونه، همه این موارد معادل یکدیگرند: .Ql 42 , .Ql 042 , .Ql 0x2A , .Ql 0X2A , .Ql 0x2a , .Ql &52 , .Ql 0o52 , .Ql 0O052 , .Ql 0b00101010 , .Ql 0B101010 . .Pp گزینه‌های زیر پذیرفته می‌شوند: .Bl -tag -width Ds .It Fl B Ar param , Fl \-backtrace Ar param نحوه چاپ ردگیری مکان‌ها (backtraces) را در صورت بروز هشدارها یا خطاها پیکربندی می‌کند. این پرچم می‌تواند چندین بار با پارامترهای مختلف که به طور معناداری با یکدیگر ترکیب می‌شوند، مشخص شود. اگر .Ar param یک عدد مثبت باشد، حداکثر عمق ردگیری را مشخص می‌کند و موارد عمیق‌تر را خلاصه می‌سازد. سایر مقادیر معتبر پارامتر به شرح زیر است: .Bl -tag -width Ds .It Cm 0 عمق حداکثری ردگیری را محدود نکن؛ این پیش‌فرض است. .It Cm all چاپ تمام مکان‌ها را اجباری کن، حتی مکان‌های «ساکت» را (برای جزئیات بیشتر بخش .Dq Excluding locations from backtraces در .Xr rgbasm 5 را ببینید). .It Cm no-all مکان‌های «ساکت شده» را در ردگیری‌ها چاپ نکن؛ این پیش‌فرض است. .It Cm collapse تمام مکان‌ها را در یک خط چاپ کن. .It Cm no-collapse هر مکان را در یک خط جداگانه چاپ کن؛ این پیش‌فرض است. .El .It Fl b Ar chars , Fl \-binary-digits Ar chars اجازه می‌دهد علاوه بر مقادیر پیش‌فرض .Sq 0 و .Sq 1 از دو نویسه دیگر برای ثابت‌های دودویی استفاده شود. نویسه‌های معتبر، اعدادی به غیر از .Sq 0 و .Sq 1 ، حروف، .Sq \&. ، .Sq # یا .Sq @ هستند. .It Fl \-color Ar when مشخص می‌کند چه زمانی پیام‌های هشدار و خطا با رنگ برجسته شوند: .Ql always ، .Ql never یا .Ql auto . مقدار .Ql auto استفاده از رنگ‌ها را بر اساس متغیرهای محیطی .Ql Lk https://no-color.org NO_COLOR یا .Ql Lk https://force-color.org FORCE_COLOR یا هدایت خروجی به یک TTY تعیین می‌کند. .It Fl D Ar name Ns Oo = Ns Ar value Oc , Fl \-define Ar name Ns Oo = Ns Ar value Oc یک نماد رشته‌ای به کد منبع کامپایل‌شده اضافه می‌کند. این معادل .Ql Ar name Ic EQUS No \(dq Ns Ar value Ns \(dq در کد است، یا .Ql Ar name Ic EQUS No \(dq1\(dq اگر .Ar value مشخص نشده باشد. .It Fl E , Fl \-export-all همه برچسب‌ها را برون‌ریزی می‌کند، از جمله برچسب‌های محلی و مواردی که به آن‌ها ارجاع داده نشده است. .It Fl g Ar chars , Fl \-gfx-chars Ar chars اجازه می‌دهد علاوه بر مقادیر پیش‌فرض .Sq 0 ، .Sq 1 ، .Sq 2 و .Sq 3 از چهار نویسه دیگر برای ثابت‌های گرافیکی استفاده شود. نویسه‌های معتبر، اعدادی به غیر از .Sq 0 تا .Sq 3 ، حروف، .Sq \&. ، .Sq # یا .Sq @ هستند. مقادیر پیش‌فرض 0123 هستند. .It Fl h , Fl \-help متن راهنمای برنامه را چاپ کرده و خارج می‌شود. (اگر متغیر محیطی .Dv COLUMNS به صورت غیرصفر تعریف شده باشد، متن راهنما بر اساس مقدار آن سطرشکنی می‌شود؛ در غیر این صورت، در صورت ارسال خروجی به TTY بر اساس پهنای پنجره کنسول سطرشکنی خواهد شد.) .It Fl I Ar path , Fl \-include Ar path یک .Dq مسیر شمول (include path) جدید اضافه می‌کند؛ .Ar path باید به یک دایرکتوری اشاره کند. هنگامی که هر یک از دستورهای .Ic INCLUDE .Pq شامل مورد ضمنی ناشی از Fl P ، .Ic INCBIN یا .Ic READFILE فراخوانی شوند، .Nm ابتدا مسیر ارائه‌شده را از دایرکتوری کاری خود جستجو می‌کند؛ در صورت ناموفق بودن، مجدداً از هر یک از دایرکتوری‌های .Dq include path به ترتیبی که ارائه شده‌اند تلاش می‌کند. .It Fl M Ar depend_file , Fl \-dependfile Ar depend_file وابستگی‌های .Xr make 1 را در .Ar depend_file می‌نویسد. .It Fl MG همراه با .Fl M استفاده می‌شود. این گزینه باعث می‌شود .Nm فرض کند فایل‌های مفقود به‌طور خودکار تولید می‌شوند: هنگامی که هر یک از دستورهای .Ic INCLUDE .Pq شامل مورد ضمنی ناشی از Fl P ، .Ic INCBIN یا .Ic READFILE روی فایلی که وجود ندارد اعمال شود، آن فایل به عنوان یک وابستگی افزوده شده، و سپس .Nm به جای صدور خطا، به طور عادی خارج می‌شود یا پردازش را ادامه می‌دهد (بسته به اینکه آیا .Fl MC فعال بوده است یا خیر). این ویژگی در به‌روزرسانی خودکار Makefileها استفاده می‌شود. .It Fl MC گزینه .Fl MG را به طور ضمنی فعال می‌کند. این کار باعث می‌شود .Nm به جای خروج، پس از مواجهه با یک فایل وابستگی ناموجود، پردازش را ادامه دهد. توجه داشته باشید که این عمل .Em به هیچ وجه توصیه نمی‌شود اگر وابستگی‌های ناموجود بر پردازش‌های بعدی تأثیر بگذارند، برای نمونه با تغییر شاخه شرط یک دستور .Ic IF . .It Fl MP در صورت فعال بودن، یک هدف ساختگی (phony target) را برای هر وابستگی به جز فایل اصلی، به قواعد صادرشده توسط .Fl M اضافه می‌کند. این ویژگی مانع از بروز خطای .Xr make 1 در صورت حذف فایل‌های وابستگی می‌شود. .It Fl MT Ar target_file یک هدف به قواعد صادرشده توسط .Fl M اضافه می‌کند. دقیقاً همان رشته ارائه‌شده، شامل فاصله‌ها و نویسه‌های خاص، نوشته خواهد شد. .Dl Fl MT No fileA Fl MT No fileB معادل .Dl Fl MT No 'fileA fileB' است. اگر نه این گزینه و نه .Fl MQ مشخص نشده باشند، نام فایل خروجی استفاده می‌شود. .It Fl MQ Ar target_file مشابه .Fl MT ، اما علاوه بر آن نویسه‌های ویژه .Xr make 1 را (عمدتاً .Sq $ Ns ) گریزدهی می‌کند. .It Fl o Ar out_file , Fl \-output Ar out_file یک فایل شیء را در نام فایل مشخص‌شده می‌نویسد. .It Fl P Ar include_file , Fl \-preinclude Ar include_file یک فایل را از پیش شامل می‌کند. این عمل مشابه این است که دستور .Ql Ic INCLUDE Qq Ar include_file پیش از فایل ورودی .Ar asmfile خوانده شده باشد. چندین فایل را می‌توان به همان ترتیبی که مشخص شده‌اند از پیش شامل کرد. .It Fl p Ar pad_value , Fl \-pad-value Ar pad_value از این مقدار برای دستورالعمل‌های .Ic DS در بخش‌های ROM استفاده می‌کند، مگر اینکه بازنویسی شود. مقدار پیش‌فرض 0x00 است. .It Fl Q Ar fix_precision , Fl \-q-precision Ar fix_precision از این مقدار به عنوان دقت اعداد ممیز-ثابت پس از ممیز استفاده می‌کند، مگر اینکه خودشان دقت جداگانه‌ای تعیین کرده باشند. مقدار پیش‌فرض ۱۶ است، بنابراین اعداد ممیز-ثابت به صورت Q16.16 هستند (چرا که اعداد صحیح ۳۲ بیتی هستند). آرگومان می‌تواند با یک .Ql \&. شروع شود تا با نمادگذاری Q مطابقت داشته باشد؛ برای نمونه: .Ql Fl Q Ar .16 . .It Fl r Ar recursion_depth , Fl \-recursion-depth Ar recursion_depth عمق بازگشتی را مشخص می‌کند که با فراتر رفتن از آن، .Nm فرض می‌کند در یک حلقه بی‌نهایت قرار دارد. مقدار پیش‌فرض 64 است. .It Fl s Ar features Ns : Ns Ar state_file , Fl \-state Ar features Ns : Ns Ar state_file ویژگی‌های مشخص‌شده را بر اساس وضعیت نهایی .Nm در پایان ورودی آن، در .Ar state_file می‌نویسد. ویژگی‌های مورد انتظار زیرمجموعه‌ای جداشده با ویرگول از موارد زیر است: .Bl -tag -width Ds .It Cm equ تمام ثابت‌های عددی را به صورت .Ql Ic def Ar name Ic equ Ar value می‌نویسد. .It Cm var تمام متغیرها را به صورت .Ql Ic def Ar name Ic = Ar value می‌نویسد. .It Cm equs تمام ثابت‌های رشته‌ای را به صورت .Ql Ic def Ar name Ic equs Qq Ar value می‌نویسد. .It Cm char تمام نویسه‌ها را به صورت .Ql Ic charmap Ar name , Ar value می‌نویسد. .It Cm macro تمام ماکروها را به صورت .Ql Ic macro Ar name No ... Ic endm می‌نویسد. .It Cm all مانند .Cm equ,var,equs,char,macro عمل می‌کند. .El .Pp این پرچم می‌تواند چندین بار با زیرمجموعه‌های مختلف ویژگی‌ها مشخص شود تا آن‌ها را در فایل‌های مختلفی بنویسد (بخش .Sx "مثال‌ها (EXAMPLES)" در زیر را ببینید). .It Fl V , Fl \-version نسخه برنامه را چاپ کرده و خارج می‌شود. .It Fl v , Fl \-verbose حالت پرگو. سطح پرگویی با هر بار مشخص کردن این پرچم یک واحد افزایش می‌یابد و هر سطح شامل سطوح قبلی نیز می‌شود: .Bl -enum -compact .It چاپ پیکربندی .Nm پیش از انجام اقدامات. .It چاپ یک اعلان پیش از اقدامات مهم. .It چاپ برخی از نتایج میانی اقدامات. .It چاپ برخی از اطلاعات اشکال‌زدایی داخلی. .It چاپ اطلاعات داخلی با جزئیات کامل. .El سطح پرگویی از ۶ فراتر نمی‌رود. .Pp توجه داشته باشید که خروجی پرگو تنها برای خوانده شدن توسط انسان در نظر گرفته شده است و ممکن است بدون اطلاع قبلی بین نسخه‌های مختلف RGBDS تغییر کند؛ تکیه بر این خروجی‌ها در اسکریپت‌ها توصیه نمی‌شود. .It Fl W Ar warning , Fl \-warning Ar warning پرچم هشدار .Ar warning را تنظیم می‌کند. در صورتی که .Ar warning یک پرچم هشدار ناشناخته باشد، پیام هشداری چاپ خواهد شد. برای فهرستی از هشدارها بخش .Sx "خطاها (DIAGNOSTICS)" را ببینید. .It Fl w تمام خروجی‌های هشدار را غیرفعال می‌کند، حتی زمانی که به خطا تبدیل شده باشند. .It Fl X Ar max_errors , Fl \-max-errors Ar max_errors اگر تعداد خطاها (نه هشدارها) بیشتر از این مقدار باشد، فرآیند اسمبلی را لغو می‌کند؛ .Fl X Ar 0 این رفتار را غیرفعال می‌کند. اگر .Nm خطاها را در یک ترمینال چاپ کند، مقدار پیش‌فرض ۱۰۰ و در غیر این صورت ۰ است. .It @ Ns Ar at_file گزینه‌ها و آرگومان‌های بیشتری را از یک فایل می‌خواند، به گونه‌ای که گویی محتویات آن در خط فرمان ارائه شده‌اند. آرگومان‌ها با فاصله خالی یا خط جدید از هم جدا می‌شوند. خطوطی که با علامت هش .Pq Ql # آغاز می‌شوند، یادداشت محسوب شده و نادیده گرفته می‌شوند. .Pp هیچ پردازشی توسط شل، مانند بسط نویسه‌های عام یا متغیرها، انجام نمی‌شود. هیچ پشتیبانی برای گریزدهی یا نقل‌قول فاصله‌ها برای گنجاندن در آرگومان‌ها وجود ندارد. گزینه استاندارد .Ql -- برای توقف پردازش گزینه‌ها، پردازش at-file را نیز غیرفعال می‌کند. توجه داشته باشید که گرچه .Ql -- می‌تواند .Em درون یک at-file استفاده شود، اما تنها پردازش گزینه‌ها را درون همان at-file غیرفعال می‌کند و پردازش در دامنه والد ادامه می‌یابد. .El .Sh "خطاها (DIAGNOSTICS)" هشدارها پیام‌های تشخیصی هستند که رفتارهای احتمالاً اشتباه را که لزوماً فرآیند اسمبلی را با مشکل مواجه نمی‌کنند، نشان می‌دهند. گزینه‌های زیر نحوه پردازش هشدارها را تغییر می‌دهند: .Bl -tag -width Ds .It Fl Werror تبدیل تمام هشدارها به خطا. می‌توان آن را به صورت .Fl Wno-error نفی کرد تا از تبدیل شدن همه هشدارها به خطا جلوگیری شود. .It Fl Werror= تبدیل هشدار یا فراهشدار (meta warning) مشخص‌شده به خطا. نام یک هشدار الحاق می‌شود .Pq برای نمونه: Fl Werror=obsolete ، و این هشدار به طور ضمنی فعال شده و به خطا تبدیل می‌گردد. می‌توان آن را به صورت .Fl Wno-error= نفی کرد تا حتی در صورت برقراری .Fl Werror ، از تبدیل شدن یک هشدار خاص به خطا جلوگیری شود. .El .Pp هشدارهای زیر هشدارهای .Dq meta هستند که مجموعه‌ای از هشدارهای دیگر را فعال می‌کنند. اگر یک هشدار خاص هم از طریق یک پرچم meta و هم یک پرچم خاص تغییر وضعیت دهد، پرچم خاص‌تر اولویت دارد. موقعیت در خط فرمان به عنوان برطرف‌کننده تعارض عمل می‌کند و آخرین گزینه اعمال می‌شود. .Bl -tag -width Ds .It Fl Wall هشدارهایی را فعال می‌کند که به احتمال زیاد نشان‌دهنده یک خطا یا رفتار نامطلوب هستند و به آسانی قابل رفع می‌باشند. .It Fl Wextra هشدارهای اضافی را فعال می‌کند که احتمال ایجاد مشکل توسط آن‌ها کمتر است، اما ممکن است همچنان مورد نظر باشند. .It Fl Weverything دقیقاً تک‌تک هشدارها را فعال می‌کند. .El .Pp هشدارهای زیر پرچم‌های واقعی هشدار هستند؛ در کنار هر توضیح، پرچم هشدار مربوطه نیز آورده شده است. توجه داشته باشید که هر یک از این پرچم‌ها دارای یک حالت نقیض نیز هستند (برای نمونه، .Fl Wobsolete هشداری را فعال می‌کند که .Fl Wno-obsolete آن را غیرفعال می‌سازد؛ و .Fl Wall هر هشداری را که .Fl Wno-all غیرفعال می‌کند، فعال می‌سازد). در اینجا فقط پرچم‌های غیرپیش‌فرض فهرست شده‌اند. صرف‌نظر از پیشوند .Dq no- ، ورودی‌ها بر اساس حروف الفبا مرتب شده‌اند. .Bl -tag -width Ds .It Fl Wno-assert هشدار هنگام شکست اعتبارسنجی‌های از نوع .Ic WARN . (برای .Ic ASSERT ، بخش .Dq Aborting the assembly process در .Xr rgbasm 5 را ببینید). .It Fl Wbackwards-for هشدار هنگامی که مقادیر آغاز و پایان حلقه‌های .Ic FOR بر اساس مقدار گام جابجا شده باشند. این هشدار توسط .Fl Wall فعال می‌شود. .It Fl Wbuiltin-args هشدار درباره آرگومان‌های نادرست به توابع توکار، مانند .Fn STRSLICE با اندیس‌های خارج از محدوده رشته. این هشدار توسط .Fl Wall فعال می‌شود. .It Fl Wcharmap-redef هشدار هنگام تعریف مجدد یک نگاشت charmap. این هشدار توسط .Fl Wall فعال می‌شود. .It Fl Wdiv هشدار هنگام تقسیم کوچک‌ترین عدد صحیح منفی (2**31-) بر 1-، که به دلیل سرریز عدد صحیح خود آن را بازمی‌گرداند. .It Fl Wempty-data-directive هشدار هنگامی که .Ic DB ، .Ic DW یا .Ic DL بدون آرگومان در یک بخش ROM استفاده شوند. این هشدار توسط .Fl Wall فعال می‌شود. .It Fl Wempty-macro-arg هشدار هنگامی که یک آرگومان ماکرو خالی باشد. این هشدار توسط .Fl Wextra فعال می‌شود. .It Fl Wempty-strrpl هشدار هنگامی که تابع .Fn STRRPL با یک رشته خالی به عنوان آرگومان دوم خود (زیررشته‌ای که باید جایگزین شود) فراخوانی شود. این هشدار توسط .Fl Wall فعال می‌شود. .It Fl Wexport-undefined هشدار هنگام برون‌ریزی یک نماد تعریف‌نشده. این هشدار توسط .Fl Wall فعال می‌شود. .It Fl Wno-large-constant هشدار هنگام مواجهه با ثابتی که برای قرارگیری در یک عدد صحیح علامت‌دار ۳۲ بیتی بیش از حد بزرگ است. .It Fl Wmacro-shift هشدار هنگام جابجایی آرگومان‌های ماکرو به فراتر از محدوده‌شان. این هشدار توسط .Fl Wextra فعال می‌شود. .It Fl Wno-nested-comment هشدار هنگامی که توالی شروع یادداشت بلوکی .Ql /* درون یک یادداشت بلوکی پیدا شود. یادداشت‌های بلوکی نمی‌توانند تو در تو باشند، بنابراین اولین .Ql */ کل یادداشت را پایان می‌دهد. .It Fl Wno-obsolete هشدار هنگام مواجهه با ویژگی‌های منسوخ‌شده که ممکن است در آینده حذف شوند. .It Fl Wnumeric-string= هشدار هنگامی که با یک رشته چندنویسه‌ای به عنوان عدد برخورد شود. .Fl Wnumeric-string=0 یا .Fl Wno-numeric-string این هشدار را غیرفعال می‌کند. .Fl Wnumeric-string=1 یا صرفاً .Fl Wnumeric-string درباره رشته‌های طولانی‌تر از چهار نویسه هشدار می‌دهد، زیرا چهار نویسه یا کمتر درون یک عدد صحیح ۳۲ بیتی جای می‌گیرند. .Fl Wnumeric-string=2 در مورد هر رشته چندنویسه‌ای هشدار می‌دهد. .It Fl Wpurge= هشدار هنگام پاکسازی نمادهایی که احتمالاً ضروری بوده‌اند. .Fl Wpurge=0 یا .Fl Wno-purge این هشدار را غیرفعال می‌کند. .Fl Wpurge=1 هنگام پاکسازی هر نماد صادرشده (صرف‌نظر از نوع آن) هشدار می‌دهد. .Fl Wpurge=2 یا صرفاً .Fl Wpurge همچنین هنگام پاکسازی هر برچسب (حتی اگر صادر نشده باشد) هشدار می‌دهد. .It Fl Wshift هشدار هنگام جابجایی به راست یک مقدار منفی. به جای آن از تقسیم بر 2**N استفاده کنید. .It Fl Wshift-amount هشدار هنگامی که عملوندِ یک عمل جابجایی منفی یا بزرگ‌تر از ۳۲ باشد. .It Fl Wtruncation= هشدار هنگامی که یک برش ضمنی (برای نمونه، .Ic db به یک مقدار ۸ بیتی) باعث از دست رفتن برخی بیت‌ها شود. .Fl Wtruncation=0 یا .Fl Wno-truncation این هشدار را غیرفعال می‌کند. .Fl Wtruncation=1 یا صرفاً .Fl Wtruncation زمانی هشدار می‌دهد که یک مقدار N بیتی برابر یا بزرگ‌تر از 2**N یا کوچک‌تر از 2**N- باشد. .Fl Wtruncation=2 همچنین زمانی هشدار می‌دهد که یک مقدار N بیتی کمتر از (1-2**N)- باشد که در کدگذاری متمم دو جای نمی‌گیرد. .It Fl Wunmapped-char= هشدار هنگامی که یک نویسه تحت تبدیل charmap قرار می‌گیرد اما هیچ نگاشت تعریف‌شده‌ای ندارد. .Fl Wunmapped-char=0 یا .Fl Wno-unmapped-char این هشدار را غیرفعال می‌کند. .Fl Wunmapped-char=1 یا صرفاً .Fl Wunmapped-char تنها زمانی هشدار می‌دهد که charmap فعال خالی نباشد. .Fl Wunmapped-char=2 زمانی هشدار می‌دهد که charmap فعال خالی باشد، و/یا charmap پیش‌فرض .Sq main نباشد. .It Fl Wunmatched-directive هشدار هنگامی که یکی از دستورالعمل‌های .Ic PUSHC ، PUSHO یا .Ic PUSHS دارای .Ic POPC ، POPO یا .Ic POPS متناظر نباشد. این هشدار توسط .Fl Wextra فعال می‌شود. .It Fl Wunterminated-load هشدار هنگامی که یک بلوک .Ic LOAD با یک .Ic ENDL پایان نیافته باشد. این هشدار توسط .Fl Wextra فعال می‌شود. .It Fl Wno-user هشدار هنگامی که دستور توکار .Ic WARN اجرا می‌شود. (برای .Ic WARN ، بخش .Dq Aborting the assembly process در .Xr rgbasm 5 را ببینید). .El .Sh "مثال‌ها (EXAMPLES)" می‌توانید یک فایل منبع را به دو روش اسمبل کنید. .Pp روش مستقیم: .Dl $ rgbasm -o bar.o foo.asm .Pp روش لوله‌کشی (pipes): .Dl $ cat foo.asm | rgbasm -o bar.o - .Dl $ rgbasm -o bar.o - < foo.asm .Pp فایل شیء حاصل هنوز یک تصویر ROM قابل استفاده نیست\(emباید ابتدا از طریق .Xr rgblink 1 و سپس .Xr rgbfix 1 پردازش شود. .Pp نوشتن وضعیت نهایی اسمبلر در یک فایل: .Dl $ rgbasm -s all:state.dump.asm foo.asm .Pp یا در چندین فایل: .Dl $ rgbasm -s equ,var:numbers.dump.asm -s equs:strings.dump.asm foo.asm .Sh "گزارش باگ‌ها (BUGS)" لطفاً اشکالات یا خطاهای موجود در این مستندات را در .Lk https://github.com/gbdev/rgbds/issues GitHub گزارش کنید. .Sh "همچنین ببینید (SEE ALSO)" .Xr rgbasm 5 , .Xr rgblink 1 , .Xr rgbfix 1 , .Xr rgbgfx 1 , .Xr gbz80 7 , .Xr rgbasm-old 5 , .Xr rgbds 5 , .Xr rgbds 7 .Sh "تاریخچه (HISTORY)" .Nm در ابتدا توسط .An Carsten S\(/orensen به عنوان بخشی از بسته ASMotor نوشته شد و بعداً توسط .An Justin Lloyd در RGBDS بازبسته‌بندی شد. این نرم‌افزار اکنون توسط شماری از مشارکت‌کنندگان در .Lk https://github.com/gbdev/rgbds نگهداری می‌شود.