git.y1.nz

gbdk-2020

GameBoy Development Kit
download: https://git.y1.nz/archives/gbdk.tar.gz
README | Files | Log | Refs | LICENSE

docs/api/docs_toolchain_settings.html

      1 <!-- HTML header for doxygen 1.8.14-->
      2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
      3 <html xmlns="http://www.w3.org/1999/xhtml">
      4 <head>
      5 <meta http-equiv="cache-control" content="max-age=86400"/>
      6 <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
      7 <meta http-equiv="X-UA-Compatible" content="IE=9"/>
      8 <meta name="generator" content="Doxygen 1.9.2"/>
      9 <meta name="viewport" content="width=device-width, initial-scale=1"/>
     10 <title>GBDK 2020 Docs: Toolchain settings</title>
     11 <link href="tabs.css" rel="stylesheet" type="text/css"/>
     12 <script type="text/javascript" src="jquery.js"></script>
     13 <script type="text/javascript" src="dynsections.js"></script>
     14 <link href="navtree.css" rel="stylesheet" type="text/css"/>
     15 <script type="text/javascript" src="resize.js"></script>
     16 <script type="text/javascript" src="navtreedata.js"></script>
     17 <script type="text/javascript" src="navtree.js"></script>
     18 <link href="search/search.css" rel="stylesheet" type="text/css"/>
     19 <script type="text/javascript" src="search/searchdata.js"></script>
     20 <script type="text/javascript" src="search/search.js"></script>
     21 <link href="doxygen.css" rel="stylesheet" type="text/css" />
     22 <link href="doxygen-awesome.css" rel="stylesheet" type="text/css"/>
     23 <link href="doxygen-awesome-sidebar-only.css" rel="stylesheet" type="text/css"/>
     24 <link href="doxygen-awesome-sidebar-only-darkmode-toggle.css" rel="stylesheet" type="text/css"/>
     25 <!-- BEGIN: doxygen-awesome-css -->
     26         <script type="text/javascript" src="doxygen-awesome-darkmode-toggle.js"></script>
     27         <script type="text/javascript">
     28             DoxygenAwesomeDarkModeToggle.init()
     29         </script>
     30         <script type="text/javascript" src="doxygen-awesome-paragraph-link.js"></script>
     31         <script type="text/javascript">
     32             DoxygenAwesomeParagraphLink.init()
     33         </script>        
     34 <!-- END: doxygen-awesome-css -->
     35 </head>
     36 <body>
     37 <div id="top"><!-- do not remove this div, it is closed by doxygen! -->
     38 <div id="titlearea">
     39 <table cellspacing="0" cellpadding="0">
     40  <tbody>
     41  <tr style="height: 56px;">
     42   <td id="projectalign" style="padding-left: 0.5em;">
     43    <div id="projectname">GBDK 2020 Docs
     44    &#160;<span id="projectnumber">4.5.0</span>
     45    </div>
     46    <div id="projectbrief">API Documentation for GBDK 2020</div>
     47   </td>
     48  </tr>
     49  </tbody>
     50 </table>
     51 </div>
     52 <!-- end header part -->
     53 <!-- Generated by Doxygen 1.9.2 -->
     54 <script type="text/javascript">
     55 /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
     56 var searchBox = new SearchBox("searchBox", "search",'Search','.html');
     57 /* @license-end */
     58 </script>
     59 <script type="text/javascript" src="menudata.js"></script>
     60 <script type="text/javascript" src="menu.js"></script>
     61 <script type="text/javascript">
     62 /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
     63 $(function() {
     64   initMenu('',true,false,'search.php','Search');
     65   $(document).ready(function() { init_search(); });
     66 });
     67 /* @license-end */
     68 </script>
     69 <div id="main-nav"></div>
     70 </div><!-- top -->
     71 <div id="side-nav" class="ui-resizable side-nav-resizable">
     72   <div id="nav-tree">
     73     <div id="nav-tree-contents">
     74       <div id="nav-sync" class="sync"></div>
     75     </div>
     76   </div>
     77   <div id="splitbar" style="-moz-user-select:none;" 
     78        class="ui-resizable-handle">
     79   </div>
     80 </div>
     81 <script type="text/javascript">
     82 /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&amp;dn=expat.txt MIT */
     83 $(document).ready(function(){initNavTree('docs_toolchain_settings.html',''); initResizable(); });
     84 /* @license-end */
     85 </script>
     86 <div id="doc-content">
     87 <!-- window showing the filter options -->
     88 <div id="MSearchSelectWindow"
     89      onmouseover="return searchBox.OnSearchSelectShow()"
     90      onmouseout="return searchBox.OnSearchSelectHide()"
     91      onkeydown="return searchBox.OnSearchSelectKey(event)">
     92 </div>
     93 
     94 <!-- iframe showing the search results (closed by default) -->
     95 <div id="MSearchResultsWindow">
     96 <iframe src="javascript:void(0)" frameborder="0" 
     97         name="MSearchResults" id="MSearchResults">
     98 </iframe>
     99 </div>
    100 
    101 <div><div class="header">
    102   <div class="headertitle"><div class="title">Toolchain settings </div></div>
    103 </div><!--header-->
    104 <div class="contents">
    105 <div class="textblock"><p ><a class="anchor" id="lcc-settings"></a></p>
    106 <h1><a class="anchor" id="autotoc_md288"></a>
    107 lcc settings</h1>
    108 <div class="fragment"><div class="line">./lcc [ option | file ]...</div>
    109 <div class="line">    except for -l, options are processed left-to-right before files</div>
    110 <div class="line">    unrecognized options are taken to be linker options</div>
    111 <div class="line">-c             compile only</div>
    112 <div class="line">-debug         Turns on --debug for compiler, -y (.cdb), -j (.noi), -w (wide .map format) for linker</div>
    113 <div class="line">                       -Wa-l (assembler .lst), -Wl-u (.lst -&gt; .rst address update)</div>
    114 <div class="line">-Dname=def     define the preprocessor symbol `name&#39;</div>
    115 <div class="line">-E             only run preprocessor on named .c and .h files files -&gt; stdout</div>
    116 <div class="line">--save-preproc Use with -E for output to *.i files instead of stdout</div>
    117 <div class="line">-help or -?    print this message</div>
    118 <div class="line">-Idir          add `dir&#39; to the beginning of the list of #include directories</div>
    119 <div class="line">-K             don&#39;t run ihxcheck test on linker ihx output</div>
    120 <div class="line">-lx            search library `x&#39;</div>
    121 <div class="line">-m             select port and platform: &quot;-m[port]:[plat]&quot; ports:sm83,z80,mos6502 plats:ap,duck,gb,sms,gg,nes</div>
    122 <div class="line">-N             do not search the standard directories for #include files</div>
    123 <div class="line">-no-crt        do not auto-include the gbdk crt0.o runtime in linker list</div>
    124 <div class="line">-no-libs       do not auto-include the gbdk libs in linker list</div>
    125 <div class="line">-o file        leave the output in `file&#39;</div>
    126 <div class="line">-S             compile to assembly language</div>
    127 <div class="line">-autobank      auto-assign banks set to 255 (bankpack)</div>
    128 <div class="line">-tempdir=dir   place temporary files in `dir/&#39;</div>
    129 <div class="line">-Uname         undefine the preprocessor symbol `name&#39;</div>
    130 <div class="line">-v             show commands as they are executed; 2nd -v suppresses execution</div>
    131 <div class="line">-Woarg         specify system-specific `arg&#39;</div>
    132 <div class="line">-W[pfablimnc]arg pass `arg&#39; to the (p)preprocessor, (f)compiler, (a)assembler, (b)bankpack,</div>
    133 <div class="line">                                   (l)linker, (i)ihxcheck, (m)makebin, (n)makenes, (c)makecom</div>
    134 </div><!-- fragment --><p> <a class="anchor" id="sdcc-settings"></a></p>
    135 <h1><a class="anchor" id="autotoc_md289"></a>
    136 sdcc settings</h1>
    137 <div class="fragment"><div class="line">SDCC : z80/sm83/mos6502/mos65c02 TD- 4.5.1 #15267 (Linux)</div>
    138 <div class="line">published under GNU General Public License (GPL)</div>
    139 <div class="line">Usage : sdcc [options] filename</div>
    140 <div class="line">Options :-</div>
    141 <div class="line"> </div>
    142 <div class="line">General options:</div>
    143 <div class="line">      --help                Display this help</div>
    144 <div class="line">  -v  --version             Display sdcc&#39;s version</div>
    145 <div class="line">      --verbose             Trace calls to the preprocessor, assembler, and linker</div>
    146 <div class="line">  -V                        Execute verbosely. Show sub commands as they are run</div>
    147 <div class="line">  -d                        Output list of macro definitions in effect. Use with -E</div>
    148 <div class="line">  -D                        Define macro as in -Dmacro</div>
    149 <div class="line">  -I                        Add to the include (*.h) path, as in -Ipath</div>
    150 <div class="line">  -A                        </div>
    151 <div class="line">  -U                        Undefine macro as in -Umacro</div>
    152 <div class="line">  -M                        Preprocessor option</div>
    153 <div class="line">  -W                        Pass through options to the pre-processor (p), assembler (a) or linker (l)</div>
    154 <div class="line">      --include             Pre-include a file during pre-processing</div>
    155 <div class="line">  -E  --preprocessonly      Preprocess only, do not compile</div>
    156 <div class="line">      --syntax-only         Parse and verify syntax only, do not compile</div>
    157 <div class="line">  -S                        Compile only; do not assemble or link</div>
    158 <div class="line">  -c  --compile-only        Compile and assemble, but do not link</div>
    159 <div class="line">      --c1mode              Act in c1 mode.  The standard input is preprocessed code, the output is assembly code.</div>
    160 <div class="line">  -o                        Place the output into the given path resp. file</div>
    161 <div class="line">  -x                        Optional file type override (c, c-header or none), valid until the next -x</div>
    162 <div class="line">      --print-search-dirs   display the directories in the compiler&#39;s search path</div>
    163 <div class="line">      --vc                  messages are compatible with Micro$oft visual studio</div>
    164 <div class="line">      --use-stdout          send errors to stdout instead of stderr</div>
    165 <div class="line">      --nostdlib            Do not include the standard library directory in the search path</div>
    166 <div class="line">      --nostdinc            Do not include the standard include directory in the search path</div>
    167 <div class="line">      --less-pedantic       Disable some of the more pedantic warnings</div>
    168 <div class="line">      --disable-warning     &lt;nnnn&gt; Disable specific warning</div>
    169 <div class="line">      --Werror              Treat the warnings as errors</div>
    170 <div class="line">      --debug               Enable debugging symbol output</div>
    171 <div class="line">      --cyclomatic          Display complexity of compiled functions</div>
    172 <div class="line">      --std                 Determine the language standard (c90, c99, c11, c23, c2y, sdcc89 etc.)</div>
    173 <div class="line">      --fdollars-in-identifiers  Permit &#39;$&#39; as an identifier character</div>
    174 <div class="line">      --fsigned-char        Make &quot;char&quot; signed by default</div>
    175 <div class="line">      --use-non-free        Search / include non-free licensed libraries and header files</div>
    176 <div class="line"> </div>
    177 <div class="line">Code generation options:</div>
    178 <div class="line">  -m                        Set the port to use e.g. -mz80.</div>
    179 <div class="line">  -p                        Select port specific processor e.g. -mpic14 -p16f84</div>
    180 <div class="line">      --stack-auto          Stack automatic variables</div>
    181 <div class="line">      --xstack              Use external stack</div>
    182 <div class="line">      --int-long-reent      Use reentrant calls on the int and long support functions</div>
    183 <div class="line">      --float-reent         Use reentrant calls on the float support functions</div>
    184 <div class="line">      --xram-movc           Use movc instead of movx to read xram (xdata)</div>
    185 <div class="line">      --callee-saves        &lt;func[,func,...]&gt; Cause the called function to save registers instead of the caller</div>
    186 <div class="line">      --fomit-frame-pointer  Leave out the frame pointer.</div>
    187 <div class="line">      --all-callee-saves    callee will always save registers used</div>
    188 <div class="line">      --stack-probe         insert call to function __stack_probe at each function prologue</div>
    189 <div class="line">      --no-xinit-opt        don&#39;t memcpy initialized xram from code</div>
    190 <div class="line">      --no-c-code-in-asm    don&#39;t include c-code as comments in the asm file</div>
    191 <div class="line">      --no-peep-comments    don&#39;t include peephole optimizer comments</div>
    192 <div class="line">      --codeseg             &lt;name&gt; use this name for the code segment</div>
    193 <div class="line">      --constseg            &lt;name&gt; use this name for the const segment</div>
    194 <div class="line">      --dataseg             &lt;name&gt; use this name for the data segment</div>
    195 <div class="line"> </div>
    196 <div class="line">Optimization options:</div>
    197 <div class="line">      --opt-code-speed      Optimize for code speed rather than size</div>
    198 <div class="line">      --opt-code-size       Optimize for code size rather than speed</div>
    199 <div class="line">      --max-allocs-per-node  Maximum number of register assignments considered at each node of the tree decomposition</div>
    200 <div class="line">      --no-reg-params       On some ports, disable passing some parameters in registers</div>
    201 <div class="line">      --nostdlibcall        Disable optimization of calls to standard library</div>
    202 <div class="line">      --nooverlay           Disable overlaying leaf function auto variables</div>
    203 <div class="line">      --nogcse              Disable the GCSE optimisation</div>
    204 <div class="line">      --nolospre            Disable lospre</div>
    205 <div class="line">      --nogenconstprop      Disable generalized constant propagation</div>
    206 <div class="line">      --nolabelopt          Disable label optimisation</div>
    207 <div class="line">      --noinvariant         Disable optimisation of invariants</div>
    208 <div class="line">      --noinduction         Disable loop variable induction</div>
    209 <div class="line">      --noloopreverse       Disable the loop reverse optimisation</div>
    210 <div class="line">      --no-peep             Disable the peephole assembly file optimisation</div>
    211 <div class="line">      --peep-asm            Enable peephole optimization on inline assembly</div>
    212 <div class="line">      --peep-return         Enable peephole optimization for return instructions</div>
    213 <div class="line">      --no-peep-return      Disable peephole optimization for return instructions</div>
    214 <div class="line">      --peep-file           &lt;file&gt; use this extra peephole file</div>
    215 <div class="line">      --allow-unsafe-read   Allow optimizations to read any memory location anytime</div>
    216 <div class="line"> </div>
    217 <div class="line">Internal debugging options:</div>
    218 <div class="line">      --dump-ast            Dump front-end AST before generating i-code</div>
    219 <div class="line">      --dump-i-code         Dump the i-code structure at all stages</div>
    220 <div class="line">      --dump-graphs         Dump graphs (control-flow, conflict, etc)</div>
    221 <div class="line">      --i-code-in-asm       Include i-code as comments in the asm file</div>
    222 <div class="line">      --fverbose-asm        Include code generator comments in the asm output</div>
    223 <div class="line"> </div>
    224 <div class="line">Linker options:</div>
    225 <div class="line">  -l                        Include the given library in the link</div>
    226 <div class="line">  -L                        Add the next field to the library search path</div>
    227 <div class="line">      --lib-path            &lt;path&gt; use this path to search for libraries</div>
    228 <div class="line">      --out-fmt-ihx         Output in Intel hex format</div>
    229 <div class="line">      --out-fmt-s19         Output in S19 hex format</div>
    230 <div class="line">      --xram-loc            &lt;nnnn&gt; External Ram start location</div>
    231 <div class="line">      --xram-size           &lt;nnnn&gt; External Ram size</div>
    232 <div class="line">      --iram-size           &lt;nnnn&gt; Internal Ram size</div>
    233 <div class="line">      --xstack-loc          &lt;nnnn&gt; External Stack start location</div>
    234 <div class="line">      --code-loc            &lt;nnnn&gt; Code Segment Location</div>
    235 <div class="line">      --code-size           &lt;nnnn&gt; Code Segment size</div>
    236 <div class="line">      --stack-loc           &lt;nnnn&gt; Stack pointer initial value</div>
    237 <div class="line">      --data-loc            &lt;nnnn&gt; Direct data start location</div>
    238 <div class="line">      --idata-loc           </div>
    239 <div class="line">      --no-optsdcc-in-asm   Do not emit .optsdcc in asm</div>
    240 <div class="line"> </div>
    241 <div class="line">Special options for the z80 port:</div>
    242 <div class="line">      --callee-saves-bc     Force a called function to always save BC</div>
    243 <div class="line">      --portmode=           Determine PORT I/O mode (z80/z180)</div>
    244 <div class="line">      -bo                   &lt;num&gt; use code bank &lt;num&gt;</div>
    245 <div class="line">      -ba                   &lt;num&gt; use data bank &lt;num&gt;</div>
    246 <div class="line">      --asm=                Define assembler name (rgbds/asxxxx/isas/z80asm/gas)</div>
    247 <div class="line">      --codeseg             &lt;name&gt; use this name for the code segment</div>
    248 <div class="line">      --constseg            &lt;name&gt; use this name for the const segment</div>
    249 <div class="line">      --dataseg             &lt;name&gt; use this name for the data segment</div>
    250 <div class="line">      --no-std-crt0         Do not link default crt0.rel</div>
    251 <div class="line">      --reserve-regs-iy     Do not use IY (incompatible with --fomit-frame-pointer)</div>
    252 <div class="line">      --fno-omit-frame-pointer  Do not omit frame pointer</div>
    253 <div class="line">      --emit-externs        Emit externs list in generated asm</div>
    254 <div class="line">      --legacy-banking      Use legacy method to call banked functions</div>
    255 <div class="line">      --nmos-z80            Generate workaround for NMOS Z80 when saving IFF2</div>
    256 <div class="line">      --sdcccall            Set ABI version for default calling convention</div>
    257 <div class="line">      --allow-undocumented-instructions  Allow use of undocumented instructions</div>
    258 <div class="line"> </div>
    259 <div class="line">Special options for the sm83 port:</div>
    260 <div class="line">      -bo                   &lt;num&gt; use code bank &lt;num&gt;</div>
    261 <div class="line">      -ba                   &lt;num&gt; use data bank &lt;num&gt;</div>
    262 <div class="line">      --asm=                Define assembler name (rgbds/asxxxx/isas/z80asm/gas)</div>
    263 <div class="line">      --callee-saves-bc     Force a called function to always save BC</div>
    264 <div class="line">      --codeseg             &lt;name&gt; use this name for the code segment</div>
    265 <div class="line">      --constseg            &lt;name&gt; use this name for the const segment</div>
    266 <div class="line">      --dataseg             &lt;name&gt; use this name for the data segment</div>
    267 <div class="line">      --no-std-crt0         Do not link default crt0.rel</div>
    268 <div class="line">      --legacy-banking      Use legacy method to call banked functions</div>
    269 <div class="line">      --sdcccall            Set ABI version for default calling convention</div>
    270 <div class="line"> </div>
    271 <div class="line">Special options for the mos6502 port:</div>
    272 <div class="line">      --model-small         8-bit address space for data</div>
    273 <div class="line">      --model-large         16-bit address space for data (default)</div>
    274 <div class="line">      --no-zp-spill         place register spills in 16-bit address space</div>
    275 <div class="line">      --no-std-crt0         Do not link default crt0.rel</div>
    276 <div class="line"> </div>
    277 <div class="line">Special options for the mos65c02 port:</div>
    278 <div class="line">      --model-small         8-bit address space for data</div>
    279 <div class="line">      --model-large         16-bit address space for data (default)</div>
    280 <div class="line">      --no-zp-spill         place register spills in 16-bit address space</div>
    281 <div class="line">      --no-std-crt0         Do not link default crt0.rel</div>
    282 </div><!-- fragment --><p> <a class="anchor" id="sdasgb-settings"></a></p>
    283 <h1><a class="anchor" id="autotoc_md290"></a>
    284 sdasgb settings</h1>
    285 <div class="fragment"><div class="line">sdas Assembler V02.00 + NoICE + SDCC mods  (GameBoy)</div>
    286 <div class="line"> </div>
    287 <div class="line"> </div>
    288 <div class="line">Copyright (C) 2012  Alan R. Baldwin</div>
    289 <div class="line">This program comes with ABSOLUTELY NO WARRANTY.</div>
    290 <div class="line"> </div>
    291 <div class="line">Usage: [-Options] [-Option with arg] file</div>
    292 <div class="line">Usage: [-Options] [-Option with arg] outfile file1 [file2 ...]</div>
    293 <div class="line">  -h   or NO ARGUMENTS  Show this help list</div>
    294 <div class="line">Input:</div>
    295 <div class="line">  -I   Add the named directory to the include file</div>
    296 <div class="line">       search path.  This option may be used more than once.</div>
    297 <div class="line">       Directories are searched in the order given.</div>
    298 <div class="line">Output:</div>
    299 <div class="line">  -l   Create list   file/outfile[.lst]</div>
    300 <div class="line">  -o   Create object file/outfile[.rel]</div>
    301 <div class="line">  -s   Create symbol file/outfile[.sym]</div>
    302 <div class="line">Listing:</div>
    303 <div class="line">  -d   Decimal listing</div>
    304 <div class="line">  -q   Octal   listing</div>
    305 <div class="line">  -x   Hex     listing (default)</div>
    306 <div class="line">  -b   Display .define substitutions in listing</div>
    307 <div class="line">  -bb  and display without .define substitutions</div>
    308 <div class="line">  -c   Disable instruction cycle count in listing</div>
    309 <div class="line">  -f   Flag relocatable references by  `   in listing file</div>
    310 <div class="line">  -ff  Flag relocatable references by mode in listing file</div>
    311 <div class="line">  -p   Disable automatic listing pagination</div>
    312 <div class="line">  -u   Disable .list/.nlist processing</div>
    313 <div class="line">  -w   Wide listing format for symbol table</div>
    314 <div class="line">Assembly:</div>
    315 <div class="line">  -v   Enable out of range signed / unsigned errors</div>
    316 <div class="line">Symbols:</div>
    317 <div class="line">  -a   All user symbols made global</div>
    318 <div class="line">  -g   Undefined symbols made global</div>
    319 <div class="line">  -N   Don&#39;t resolve global assigned value symbols</div>
    320 <div class="line">  -z   Disable case sensitivity for symbols</div>
    321 <div class="line">Debugging:</div>
    322 <div class="line">  -j   Enable NoICE Debug Symbols</div>
    323 <div class="line">  -y   Enable SDCC  Debug Symbols</div>
    324 </div><!-- fragment --><p> <a class="anchor" id="sdasz80-settings"></a></p>
    325 <h1><a class="anchor" id="autotoc_md291"></a>
    326 sdasz80 settings</h1>
    327 <div class="fragment"><div class="line">sdas Assembler V02.00 + NoICE + SDCC mods  (Zilog Z80 / Hitachi HD64180 / ZX-Next / eZ80 / R800)</div>
    328 <div class="line"> </div>
    329 <div class="line"> </div>
    330 <div class="line">Copyright (C) 2012  Alan R. Baldwin</div>
    331 <div class="line">This program comes with ABSOLUTELY NO WARRANTY.</div>
    332 <div class="line"> </div>
    333 <div class="line">Usage: [-Options] [-Option with arg] file</div>
    334 <div class="line">Usage: [-Options] [-Option with arg] outfile file1 [file2 ...]</div>
    335 <div class="line">  -h   or NO ARGUMENTS  Show this help list</div>
    336 <div class="line">Input:</div>
    337 <div class="line">  -I   Add the named directory to the include file</div>
    338 <div class="line">       search path.  This option may be used more than once.</div>
    339 <div class="line">       Directories are searched in the order given.</div>
    340 <div class="line">Output:</div>
    341 <div class="line">  -l   Create list   file/outfile[.lst]</div>
    342 <div class="line">  -o   Create object file/outfile[.rel]</div>
    343 <div class="line">  -s   Create symbol file/outfile[.sym]</div>
    344 <div class="line">Listing:</div>
    345 <div class="line">  -d   Decimal listing</div>
    346 <div class="line">  -q   Octal   listing</div>
    347 <div class="line">  -x   Hex     listing (default)</div>
    348 <div class="line">  -b   Display .define substitutions in listing</div>
    349 <div class="line">  -bb  and display without .define substitutions</div>
    350 <div class="line">  -c   Disable instruction cycle count in listing</div>
    351 <div class="line">  -f   Flag relocatable references by  `   in listing file</div>
    352 <div class="line">  -ff  Flag relocatable references by mode in listing file</div>
    353 <div class="line">  -p   Disable automatic listing pagination</div>
    354 <div class="line">  -u   Disable .list/.nlist processing</div>
    355 <div class="line">  -w   Wide listing format for symbol table</div>
    356 <div class="line">Assembly:</div>
    357 <div class="line">  -v   Enable out of range signed / unsigned errors</div>
    358 <div class="line">Symbols:</div>
    359 <div class="line">  -a   All user symbols made global</div>
    360 <div class="line">  -g   Undefined symbols made global</div>
    361 <div class="line">  -N   Don&#39;t resolve global assigned value symbols</div>
    362 <div class="line">  -z   Disable case sensitivity for symbols</div>
    363 <div class="line">Debugging:</div>
    364 <div class="line">  -j   Enable NoICE Debug Symbols</div>
    365 <div class="line">  -y   Enable SDCC  Debug Symbols</div>
    366 </div><!-- fragment --><p> <a class="anchor" id="sdas6500-settings"></a></p>
    367 <h1><a class="anchor" id="autotoc_md292"></a>
    368 sdas6500 settings</h1>
    369 <div class="fragment"><div class="line">sdas Assembler V02.00 + NoICE + SDCC mods  (Rockwell 6502/6510/65C02)</div>
    370 <div class="line"> </div>
    371 <div class="line"> </div>
    372 <div class="line">Copyright (C) 2012  Alan R. Baldwin</div>
    373 <div class="line">This program comes with ABSOLUTELY NO WARRANTY.</div>
    374 <div class="line"> </div>
    375 <div class="line">Usage: [-Options] [-Option with arg] file</div>
    376 <div class="line">Usage: [-Options] [-Option with arg] outfile file1 [file2 ...]</div>
    377 <div class="line">  -h   or NO ARGUMENTS  Show this help list</div>
    378 <div class="line">Input:</div>
    379 <div class="line">  -I   Add the named directory to the include file</div>
    380 <div class="line">       search path.  This option may be used more than once.</div>
    381 <div class="line">       Directories are searched in the order given.</div>
    382 <div class="line">Output:</div>
    383 <div class="line">  -l   Create list   file/outfile[.lst]</div>
    384 <div class="line">  -o   Create object file/outfile[.rel]</div>
    385 <div class="line">  -s   Create symbol file/outfile[.sym]</div>
    386 <div class="line">Listing:</div>
    387 <div class="line">  -d   Decimal listing</div>
    388 <div class="line">  -q   Octal   listing</div>
    389 <div class="line">  -x   Hex     listing (default)</div>
    390 <div class="line">  -b   Display .define substitutions in listing</div>
    391 <div class="line">  -bb  and display without .define substitutions</div>
    392 <div class="line">  -c   Disable instruction cycle count in listing</div>
    393 <div class="line">  -f   Flag relocatable references by  `   in listing file</div>
    394 <div class="line">  -ff  Flag relocatable references by mode in listing file</div>
    395 <div class="line">  -p   Disable automatic listing pagination</div>
    396 <div class="line">  -u   Disable .list/.nlist processing</div>
    397 <div class="line">  -w   Wide listing format for symbol table</div>
    398 <div class="line">Assembly:</div>
    399 <div class="line">  -v   Enable out of range signed / unsigned errors</div>
    400 <div class="line">Symbols:</div>
    401 <div class="line">  -a   All user symbols made global</div>
    402 <div class="line">  -g   Undefined symbols made global</div>
    403 <div class="line">  -N   Don&#39;t resolve global assigned value symbols</div>
    404 <div class="line">  -z   Disable case sensitivity for symbols</div>
    405 <div class="line">Debugging:</div>
    406 <div class="line">  -j   Enable NoICE Debug Symbols</div>
    407 <div class="line">  -y   Enable SDCC  Debug Symbols</div>
    408 </div><!-- fragment --><p> <a class="anchor" id="bankpack-settings"></a></p>
    409 <h1><a class="anchor" id="autotoc_md293"></a>
    410 bankpack settings</h1>
    411 <div class="fragment"><div class="line">bankalloc [options] objfile1 objfile2 etc</div>
    412 <div class="line">Use: Read .o files and auto-assign areas with bank=255.</div>
    413 <div class="line">     Typically called by Lcc compiler driver before linker.</div>
    414 <div class="line"> </div>
    415 <div class="line">Options</div>
    416 <div class="line">-h             : Show this help</div>
    417 <div class="line">-lkin=&lt;file&gt;   : Load object files specified in linker file &lt;file&gt;</div>
    418 <div class="line">-lkout=&lt;file&gt;  : Write list of object files out to linker file &lt;file&gt;</div>
    419 <div class="line">-yt&lt;mbctype&gt;   : Set MBC type per ROM byte 149 in Decimal or Hex (0xNN)</div>
    420 <div class="line">                ([see pandocs](https://gbdev.io/pandocs/The_Cartridge_Header.html#0147---cartridge-type))</div>
    421 <div class="line">-mbc=N         : Similar to -yt, but sets MBC type directly to N instead</div>
    422 <div class="line">                of by intepreting ROM byte 149</div>
    423 <div class="line">                mbc1 will exclude banks {0x20,0x40,0x60} max=127, </div>
    424 <div class="line">                mbc2 max=15, mbc3 max=127, mbc5 max=255 (not 511!) </div>
    425 <div class="line">-min=N         : Min assigned ROM bank is N (default 1)</div>
    426 <div class="line">-max=N         : Max assigned ROM bank is N, error if exceeded</div>
    427 <div class="line">-ext=&lt;.ext&gt;    : Write files out with &lt;.ext&gt; instead of source extension</div>
    428 <div class="line">-path=&lt;path&gt;   : Write files out to &lt;path&gt; (&lt;path&gt; *MUST* already exist)</div>
    429 <div class="line">-sym=&lt;prefix&gt;  : Add symbols starting with &lt;prefix&gt; to match + update list</div>
    430 <div class="line">                 Default entry is &quot;___bank_&quot; (see below)</div>
    431 <div class="line">-cartsize      : Print min required cart size as &quot;autocartsize:&lt;NNN&gt;&quot;</div>
    432 <div class="line">-plat=&lt;plat&gt;   : Select platform specific behavior (default:gb) (gb,sms)</div>
    433 <div class="line">-random        : Distribute banks randomly for testing (honors -min/-max)</div>
    434 <div class="line">-reserve=&lt;b:n&gt; : Reserve N bytes (hex) in bank B (decimal)</div>
    435 <div class="line">                 Ex: -reserve=105:30F reserves 0x30F bytes in bank 105</div>
    436 <div class="line">-banktype=&lt;b:t&gt;: Set bank B (decimal) to use type T (CODE or LIT). For sms/gg</div>
    437 <div class="line">                 Ex: -banktype=2:LIT sets bank 2 to type LIT</div>
    438 <div class="line">-v             : Verbose output, show assignments</div>
    439 <div class="line"> </div>
    440 <div class="line">Example: &quot;bankpack -ext=.rel -path=some/newpath/ file1.o file2.o&quot;</div>
    441 <div class="line">Unless -ext or -path specify otherwise, input files are overwritten.</div>
    442 <div class="line"> </div>
    443 <div class="line">Default MBC type is not set. It *must* be specified by -mbc= or -yt!</div>
    444 <div class="line"> </div>
    445 <div class="line">The following will have FF and 255 replaced with the assigned bank:</div>
    446 <div class="line">A _CODE_255 size &lt;size&gt; flags &lt;flags&gt; addr &lt;address&gt;</div>
    447 <div class="line">S b_&lt;function name&gt; Def0000FF</div>
    448 <div class="line">S ___bank_&lt;const name&gt; Def0000FF</div>
    449 <div class="line">    (Above can be made by: const void __at(255) __bank_&lt;const name&gt;;</div>
    450 </div><!-- fragment --><p> <a class="anchor" id="sdldgb-settings"></a></p>
    451 <h1><a class="anchor" id="autotoc_md294"></a>
    452 sdldgb settings</h1>
    453 <div class="fragment"><div class="line">sdld Linker V03.00/V05.40 + sdld</div>
    454 <div class="line"> </div>
    455 <div class="line">Usage: [-Options] [-Option with arg] file</div>
    456 <div class="line">Usage: [-Options] [-Option with arg] outfile file1 [file2 ...]</div>
    457 <div class="line">Startup:</div>
    458 <div class="line">  -p   Echo commands to stdout (default)</div>
    459 <div class="line">  -n   No echo of commands to stdout</div>
    460 <div class="line">Alternates to Command Line Input:</div>
    461 <div class="line">  -c                   ASlink &gt;&gt; prompt input</div>
    462 <div class="line">  -f   file[.lk]       Command File input</div>
    463 <div class="line">Libraries:</div>
    464 <div class="line">  -k   Library path specification, one per -k</div>
    465 <div class="line">  -l   Library file specification, one per -l</div>
    466 <div class="line">Relocation:</div>
    467 <div class="line">  -b   area base address = expression</div>
    468 <div class="line">  -g   global symbol = expression</div>
    469 <div class="line">  -a   (platform) Select platform specific virtual address translation</div>
    470 <div class="line">Map format:</div>
    471 <div class="line">  -m   Map output generated as (out)file[.map]</div>
    472 <div class="line">  -w   Wide listing format for map file</div>
    473 <div class="line">  -x   Hexadecimal (default)</div>
    474 <div class="line">  -d   Decimal</div>
    475 <div class="line">  -q   Octal</div>
    476 <div class="line">Output:</div>
    477 <div class="line">  -i   Intel Hex as (out)file[.ihx]</div>
    478 <div class="line">  -s   Motorola S Record as (out)file[.s19]</div>
    479 <div class="line">  -j   NoICE Debug output as (out)file[.noi]</div>
    480 <div class="line">  -y   SDCDB Debug output as (out)file[.cdb]</div>
    481 <div class="line">List:</div>
    482 <div class="line">  -u   Update listing file(s) with link data as file(s)[.rst]</div>
    483 <div class="line">Case Sensitivity:</div>
    484 <div class="line">  -z   Disable Case Sensitivity for Symbols</div>
    485 <div class="line">End:</div>
    486 <div class="line">  -e   or null line terminates input</div>
    487 </div><!-- fragment --><p> <a class="anchor" id="sdldz80-settings"></a></p>
    488 <h1><a class="anchor" id="autotoc_md295"></a>
    489 sdldz80 settings</h1>
    490 <div class="fragment"><div class="line">sdld Linker V03.00/V05.40 + sdld</div>
    491 <div class="line"> </div>
    492 <div class="line">Usage: [-Options] [-Option with arg] file</div>
    493 <div class="line">Usage: [-Options] [-Option with arg] outfile file1 [file2 ...]</div>
    494 <div class="line">Startup:</div>
    495 <div class="line">  -p   Echo commands to stdout (default)</div>
    496 <div class="line">  -n   No echo of commands to stdout</div>
    497 <div class="line">Alternates to Command Line Input:</div>
    498 <div class="line">  -c                   ASlink &gt;&gt; prompt input</div>
    499 <div class="line">  -f   file[.lk]       Command File input</div>
    500 <div class="line">Libraries:</div>
    501 <div class="line">  -k   Library path specification, one per -k</div>
    502 <div class="line">  -l   Library file specification, one per -l</div>
    503 <div class="line">Relocation:</div>
    504 <div class="line">  -b   area base address = expression</div>
    505 <div class="line">  -g   global symbol = expression</div>
    506 <div class="line">  -a   (platform) Select platform specific virtual address translation</div>
    507 <div class="line">Map format:</div>
    508 <div class="line">  -m   Map output generated as (out)file[.map]</div>
    509 <div class="line">  -w   Wide listing format for map file</div>
    510 <div class="line">  -x   Hexadecimal (default)</div>
    511 <div class="line">  -d   Decimal</div>
    512 <div class="line">  -q   Octal</div>
    513 <div class="line">Output:</div>
    514 <div class="line">  -i   Intel Hex as (out)file[.ihx]</div>
    515 <div class="line">  -s   Motorola S Record as (out)file[.s19]</div>
    516 <div class="line">  -j   NoICE Debug output as (out)file[.noi]</div>
    517 <div class="line">  -y   SDCDB Debug output as (out)file[.cdb]</div>
    518 <div class="line">List:</div>
    519 <div class="line">  -u   Update listing file(s) with link data as file(s)[.rst]</div>
    520 <div class="line">Case Sensitivity:</div>
    521 <div class="line">  -z   Disable Case Sensitivity for Symbols</div>
    522 <div class="line">End:</div>
    523 <div class="line">  -e   or null line terminates input</div>
    524 </div><!-- fragment --><p> <a class="anchor" id="sdld6808-settings"></a></p>
    525 <h1><a class="anchor" id="autotoc_md296"></a>
    526 sdld6808 settings</h1>
    527 <div class="fragment"><div class="line">sdld Linker V03.00/V05.40 + sdld</div>
    528 <div class="line"> </div>
    529 <div class="line">Usage: [-Options] [-Option with arg] file</div>
    530 <div class="line">Usage: [-Options] [-Option with arg] outfile file1 [file2 ...]</div>
    531 <div class="line">Startup:</div>
    532 <div class="line">  -p   Echo commands to stdout (default)</div>
    533 <div class="line">  -n   No echo of commands to stdout</div>
    534 <div class="line">Alternates to Command Line Input:</div>
    535 <div class="line">  -c                   ASlink &gt;&gt; prompt input</div>
    536 <div class="line">  -f   file[.lk]       Command File input</div>
    537 <div class="line">Libraries:</div>
    538 <div class="line">  -k   Library path specification, one per -k</div>
    539 <div class="line">  -l   Library file specification, one per -l</div>
    540 <div class="line">Relocation:</div>
    541 <div class="line">  -b   area base address = expression</div>
    542 <div class="line">  -g   global symbol = expression</div>
    543 <div class="line">  -a   (platform) Select platform specific virtual address translation</div>
    544 <div class="line">Map format:</div>
    545 <div class="line">  -m   Map output generated as (out)file[.map]</div>
    546 <div class="line">  -w   Wide listing format for map file</div>
    547 <div class="line">  -x   Hexadecimal (default)</div>
    548 <div class="line">  -d   Decimal</div>
    549 <div class="line">  -q   Octal</div>
    550 <div class="line">Output:</div>
    551 <div class="line">  -i   Intel Hex as (out)file[.ihx]</div>
    552 <div class="line">  -s   Motorola S Record as (out)file[.s19]</div>
    553 <div class="line">  -j   NoICE Debug output as (out)file[.noi]</div>
    554 <div class="line">  -y   SDCDB Debug output as (out)file[.cdb]</div>
    555 <div class="line">List:</div>
    556 <div class="line">  -u   Update listing file(s) with link data as file(s)[.rst]</div>
    557 <div class="line">Case Sensitivity:</div>
    558 <div class="line">  -z   Disable Case Sensitivity for Symbols</div>
    559 <div class="line">End:</div>
    560 <div class="line">  -e   or null line terminates input</div>
    561 </div><!-- fragment --><p> <a class="anchor" id="ihxcheck-settings"></a></p>
    562 <h1><a class="anchor" id="autotoc_md297"></a>
    563 ihxcheck settings</h1>
    564 <div class="fragment"><div class="line">ihx_check input_file.ihx [options]</div>
    565 <div class="line"> </div>
    566 <div class="line">Options</div>
    567 <div class="line">-h : Show this help</div>
    568 <div class="line">-e : Treat warnings as errors</div>
    569 <div class="line"> </div>
    570 <div class="line">Use: Read a .ihx and warn about overlapped areas.</div>
    571 <div class="line">Example: &quot;ihx_check build/MyProject.ihx&quot;</div>
    572 </div><!-- fragment --><p> <a class="anchor" id="makebin-settings"></a></p>
    573 <h1><a class="anchor" id="autotoc_md298"></a>
    574 makebin settings</h1>
    575 <p >Also see <a class="el" href="docs_rombanking_mbcs.html#setting_mbc_and_rom_ram_banks">setting_mbc_and_rom_ram_banks</a> </p><div class="fragment"><div class="line">makebin: convert a Intel IHX file to binary or GameBoy format binary.</div>
    576 <div class="line">Usage: makebin [options] [&lt;in_file&gt; [&lt;out_file&gt;]]</div>
    577 <div class="line">Options:</div>
    578 <div class="line">  -p             pack mode: the binary file size will be truncated to the last occupied byte</div>
    579 <div class="line">  -s romsize     size of the binary file (default: rom banks * 16384)</div>
    580 <div class="line">  -Z             generate GameBoy format binary file</div>
    581 <div class="line">  -S             generate Sega Master System format binary file</div>
    582 <div class="line">  -N             generate Famicom/NES format binary file</div>
    583 <div class="line">  -o bytes       skip amount of bytes in binary file</div>
    584 <div class="line">SMS format options (applicable only with -S option):</div>
    585 <div class="line">  -xo n          header rom size (0xa-0x2) (default: 0xc)</div>
    586 <div class="line">  -xj n          set region code (3-7) (default: 4)</div>
    587 <div class="line">  -xv n          version number (0-15) (default: 0)</div>
    588 <div class="line">  -yo n          number of rom banks (default: 2) (autosize: A)</div>
    589 <div class="line">  -ya n          number of ram banks (default: 0)</div>
    590 <div class="line">GameBoy format options (applicable only with -Z option):</div>
    591 <div class="line">  -yo n          number of rom banks (default: 2) (autosize: A)</div>
    592 <div class="line">  -ya n          number of ram banks (default: 0)</div>
    593 <div class="line">  -yt n          MBC type (default: no MBC)</div>
    594 <div class="line">  -yl n          old licensee code (default: 0x33)</div>
    595 <div class="line">  -yk cc         new licensee string (default: 00)</div>
    596 <div class="line">  -yn name       cartridge name (default: none)</div>
    597 <div class="line">  -yc            GameBoy Color compatible</div>
    598 <div class="line">  -yC            GameBoy Color only</div>
    599 <div class="line">  -ys            Super GameBoy</div>
    600 <div class="line">  -yS            Convert .noi file named like input file to .sym</div>
    601 <div class="line">  -yj            set non-Japanese region flag</div>
    602 <div class="line">  -yN            do not copy big N validation logo into ROM header</div>
    603 <div class="line">  -yp addr=value Set address in ROM to given value (address 0x100-0x1FE)</div>
    604 <div class="line">Arguments:</div>
    605 <div class="line">  &lt;in_file&gt;      optional IHX input file, &#39;-&#39; means stdin. (default: stdin)</div>
    606 <div class="line">  &lt;out_file&gt;     optional output file, &#39;-&#39; means stdout. (default: stdout)</div>
    607 </div><!-- fragment --><p> <a class="anchor" id="makecom-settings"></a></p>
    608 <h1><a class="anchor" id="autotoc_md299"></a>
    609 makecom settings</h1>
    610 <div class="fragment"><div class="line">makecom image.rom image.noi output.com</div>
    611 <div class="line">Use: convert a binary .rom file to .msxdos com format.</div>
    612 </div><!-- fragment --><p> <a class="anchor" id="makenes-settings"></a></p>
    613 <h1><a class="anchor" id="autotoc_md300"></a>
    614 makenes settings</h1>
    615 <div class="fragment"><div class="line">makenes: Prepend an iNES header to a binary ROM image file.</div>
    616 <div class="line">Usage: makenes [options] [&lt;in_file&gt; [&lt;out_file&gt;]]</div>
    617 <div class="line">Options:</div>
    618 <div class="line">  -m   Mapper number (default: 0)</div>
    619 <div class="line">  -n   Nametable arrangement:</div>
    620 <div class="line">                              0: vertical arrangement / horizontal mirroring</div>
    621 <div class="line">                              1: horizontal arrangement / vertical mirroring</div>
    622 <div class="line">  -b   Battery bit set (default: 0)</div>
    623 <div class="line">  -a   Alternative nametable layout (default: 0)</div>
    624 <div class="line">Arguments:</div>
    625 <div class="line">  &lt;in_file&gt;      optional binary input file, &#39;-&#39; means stdin. (default: stdin)</div>
    626 <div class="line">  &lt;out_file&gt;     optional .nes output file, &#39;-&#39; means stdout. (default: stdout)</div>
    627 </div><!-- fragment --><p> <a class="anchor" id="gbcompress-settings"></a></p>
    628 <h1><a class="anchor" id="autotoc_md301"></a>
    629 gbcompress settings</h1>
    630 <div class="fragment"><div class="line">gbcompress [options] infile outfile</div>
    631 <div class="line">Use: compress a binary file and write it out.</div>
    632 <div class="line"> </div>
    633 <div class="line">Options</div>
    634 <div class="line">-h       : Show this help screen</div>
    635 <div class="line">-d       : Decompress (default is compress)</div>
    636 <div class="line">-v       : Verbose output</div>
    637 <div class="line">--cin    : Read input as .c source format (8 bit char ONLY, uses first array found)</div>
    638 <div class="line">--cout   : Write output in .c / .h source format (8 bit char ONLY) </div>
    639 <div class="line">--varname=&lt;NAME&gt; : specify variable name for c source output</div>
    640 <div class="line">--alg=&lt;type&gt;     : specify compression type: &#39;zx0&#39;, &#39;rle&#39;, &#39;gb&#39; (default)</div>
    641 <div class="line">--bank=&lt;num&gt;     : Add Bank Ref: 1 - 511 (default is none, with --cout only)</div>
    642 <div class="line">Example: &quot;gbcompress binaryfile.bin compressed.bin&quot;</div>
    643 <div class="line">Example: &quot;gbcompress -d compressedfile.bin decompressed.bin&quot;</div>
    644 <div class="line">Example: &quot;gbcompress --alg=rle binaryfile.bin compressed.bin&quot;</div>
    645 <div class="line"> </div>
    646 <div class="line">The default compression (gb) is the type used by gbtd/gbmb</div>
    647 <div class="line">The rle compression is Amiga IFF style</div>
    648 </div><!-- fragment --><p> <a class="anchor" id="png2asset-settings"></a></p>
    649 <h1><a class="anchor" id="autotoc_md302"></a>
    650 png2asset settings</h1>
    651 <div class="fragment"><div class="line">usage: png2asset    &lt;file&gt;.png [options]</div>
    652 <div class="line">-o &lt;filename&gt;       ouput file (if not used then default is &lt;png file&gt;.c)</div>
    653 <div class="line">-c &lt;filename&gt;       deprecated, same as -o</div>
    654 <div class="line">-sw &lt;width&gt;         metasprites width size (default: png width)</div>
    655 <div class="line">-sh &lt;height&gt;        metasprites height size (default: png height)</div>
    656 <div class="line">-sp &lt;props&gt;         change default for sprite OAM property bytes (in hex) (default: 0x00)</div>
    657 <div class="line">-px &lt;x coord&gt;       metasprites pivot x coordinate (default: metasprites width / 2)</div>
    658 <div class="line">-py &lt;y coord&gt;       metasprites pivot y coordinate (default: metasprites height / 2)</div>
    659 <div class="line">-pw &lt;width&gt;         metasprites collision rect width (default: metasprites width)</div>
    660 <div class="line">-ph &lt;height&gt;        metasprites collision rect height (default: metasprites height)</div>
    661 <div class="line">-spr8x8             for 8x8  hardware sprites (use SPRITES_8x8)</div>
    662 <div class="line">-spr8x16            for 8x16 hardware sprites (use SPRITES_8x16) (the default)</div>
    663 <div class="line">-spr16x16msx        MSX only: for 16x16 hardware sprites (use SPRITES_16x16)</div>
    664 <div class="line">-sprite_no_optimize keep empty sprite tiles, do not remove duplicate tiles</div>
    665 <div class="line">-b &lt;banknum&gt;        Bank number (default: fixed bank)</div>
    666 <div class="line">-area &lt;area name&gt;   Area name. Alters &quot;pragma bank ...&quot; output to constseg style. (Ex: -area LIT)</div>
    667 <div class="line">-keep_palette_order use png palette</div>
    668 <div class="line">-repair_indexed_pal try to repair indexed tile palettes (implies &quot;-keep_palette_order&quot;)</div>
    669 <div class="line">-noflip             disable tile flip</div>
    670 <div class="line">-map                Export as map (tileset + bg) instead of default metasprite output</div>
    671 <div class="line">-use_map_attributes Use CGB BG Map attributes</div>
    672 <div class="line">-use_nes_attributes Use NES BG Map attributes</div>
    673 <div class="line">-use_nes_colors     Convert RGB color values to NES PPU colors</div>
    674 <div class="line">-use_structs        Group the exported info into structs (default: false) (used by ZGB Game Engine)</div>
    675 <div class="line">-bpp                bits per pixel: 1, 2, 4 (default: 2. using 1 auto-enables &quot;-pack_mode 1bpp&quot;)</div>
    676 <div class="line">-max_palettes       max number of palettes allowed (default: 8)</div>
    677 <div class="line">                    (note: max colors = max_palettes x num colors per palette)</div>
    678 <div class="line">-pack_mode          gb, nes, sgb, sms, 1bpp (default: gb. using 1bpp auto-enables &quot;-bpp 1&quot;)</div>
    679 <div class="line">-tile_origin        tile index offset for maps (default: 0)</div>
    680 <div class="line">-tiles_only         export tile data only</div>
    681 <div class="line">-maps_only          export map tilemap only</div>
    682 <div class="line">-metasprites_only   export metasprite descriptors only</div>
    683 <div class="line">-source_tileset     use source tileset (image with common tiles)</div>
    684 <div class="line">-entity_tileset     (maps only) mark matching tiles counting from 255 down, entity patterns not exported</div>
    685 <div class="line">-keep_duplicate_tiles   do not remove duplicate tiles (default: not enabled)</div>
    686 <div class="line">-no_palettes        do not export palette data</div>
    687 <div class="line">-bin                export to binary format (requires -map)</div>
    688 <div class="line">-transposed         export transposed (column-by-column instead of row-by-row)</div>
    689 <div class="line">-rel_paths          paths to tilesets are relative to the input file path</div>
    690 <div class="line">-use_metafile       Read extra options from file &lt;inputfile&gt;.meta (file missing not an error)</div>
    691 <div class="line">decoder error empty input buffer given to decoder. Maybe caused by non-existing file?</div>
    692 </div><!-- fragment --><p> <a class="anchor" id="png2hicolorgb-settings"></a></p>
    693 <h1><a class="anchor" id="autotoc_md303"></a>
    694 png2hicolorgb settings</h1>
    695 <div class="fragment"><div class="line">png2hicolorgb input_image.png [options]</div>
    696 <div class="line">version 1.4.2: bbbbbr. Based on Glen Cook&#39;s Windows GUI &quot;hicolour.exe&quot; 1.2</div>
    697 <div class="line">Convert an image to Game Boy Hi-Color format</div>
    698 <div class="line"> </div>
    699 <div class="line">Options</div>
    700 <div class="line">-h         : Show this help</div>
    701 <div class="line">-v*        : Set log level: &quot;-v&quot; verbose, &quot;-vQ&quot; quiet, &quot;-vE&quot; only errors, &quot;-vD&quot; debug</div>
    702 <div class="line">-o &lt;file&gt;  : Set base output filename (otherwise from input image)</div>
    703 <div class="line">-s &lt;name&gt;  : Set output variable/symbol name (otherwise derived from output filename)</div>
    704 <div class="line">--csource  : Export C source format with incbins for data files</div>
    705 <div class="line">--bank=N   : Set bank number for C source output where N is decimal bank number 1-511</div>
    706 <div class="line">--type=N   : Set conversion type where N is one of below </div>
    707 <div class="line">              1: Median Cut - No Dither (*Default*)</div>
    708 <div class="line">              2: Median Cut - With Dither</div>
    709 <div class="line">              3: Wu Quantiser (best quality)</div>
    710 <div class="line">-p         : Show screen attribute pattern options (no processing)</div>
    711 <div class="line">-L=N       : Set Left  side of screen palette arrangement where N is name listed below or decimal entry</div>
    712 <div class="line">-R=N       : Set Right side of screen palette arrangement where N is name listed below or decimal entry</div>
    713 <div class="line">             Named options for N: &quot;adaptive-fast&quot;, &quot;adaptive-medium&quot;, &quot;adaptive-best&quot; (-p for full options) </div>
    714 <div class="line">--best     : Use highest quality conversion settings (--type=3 -L=adaptive-best -R=adaptive-best)</div>
    715 <div class="line">--vaddrid  : Map uses vram id (128-&gt;255-&gt;0-&gt;127) instead of (*Default*) sequential tile order (0-&gt;255)</div>
    716 <div class="line">--nodedupe : Turn off tile pattern deduplication</div>
    717 <div class="line">--precompiled   : Export Palette data as pre-compiled executable loading code</div>
    718 <div class="line">--palendbit     : Set unused bit .15 = 1 for last u16 entry in palette data indicating end (not in precompiled)</div>
    719 <div class="line">--addendcolor=N : Append 32 x color N (hex BGR555) in pal data to clear BG for shorter images (64 bytes) (not in precompiled)</div>
    720 <div class="line"> </div>
    721 <div class="line">Example 1: &quot;png2hicolorgb myimage.png&quot;</div>
    722 <div class="line">Example 2: &quot;png2hicolorgb myimage.png --csource -o my_output_filename&quot;</div>
    723 <div class="line">Example 2: &quot;png2hicolorgb myimage.png --palendbit --addendcolor 0x7FFF -o my_output_filename -s my_variable_name&quot;</div>
    724 <div class="line">* Default settings provide good results. Better quality but slower: &quot;--type=3 -L=adaptive-best -R=adaptive-best&quot;</div>
    725 <div class="line"> </div>
    726 <div class="line">Historical credits and info:</div>
    727 <div class="line">   Original Concept : Icarus Productions</div>
    728 <div class="line">   Original Code : Jeff Frohwein</div>
    729 <div class="line">   Full Screen Modification : Anon</div>
    730 <div class="line">   Adaptive Code : Glen Cook</div>
    731 <div class="line">   Windows Interface : Glen Cook</div>
    732 <div class="line">   Additional Windows Programming : Rob Jones</div>
    733 <div class="line">   Original Quantiser Code : Benny</div>
    734 <div class="line">   Quantiser Conversion : Glen Cook</div>
    735 </div><!-- fragment --><p> <a class="anchor" id="romusage-settings"></a></p>
    736 <h1><a class="anchor" id="autotoc_md304"></a>
    737 romusage settings</h1>
    738 <div class="fragment"><div class="line">romusage input_file.[map|noi|ihx|cdb|.gb[c]|.pocket|.duck|.gg|.sms] [options]</div>
    739 <div class="line">version 1.3.2, by bbbbbr</div>
    740 <div class="line"> </div>
    741 <div class="line">Options</div>
    742 <div class="line">-h  : Show this help</div>
    743 <div class="line">-p  : Set platform (GBDK specific), &quot;-p:SMS_GG&quot; for SMS/Game Gear, &quot;-p:NES1&quot; for NES</div>
    744 <div class="line"> </div>
    745 <div class="line">-a  : Show Areas in each Bank. Optional sort by, address:&quot;-aA&quot; or size:&quot;-aS&quot; </div>
    746 <div class="line">-g  : Show a small usage graph per bank (-gA for ascii style)</div>
    747 <div class="line">-G  : Show a large usage graph per bank (-GA for ascii style)</div>
    748 <div class="line">-B  : Brief (summarized) output for banked regions. Auto scales max bank</div>
    749 <div class="line">      shows [Region]_[Max Used Bank] / [auto-sized Max Bank Num]</div>
    750 <div class="line">-F  : Force Max ROM and SRAM bank num for -B. (0 based) -F:ROM:SRAM (ex: -F:255:15)</div>
    751 <div class="line"> </div>
    752 <div class="line">-m  : Manually specify an Area -m:NAME:HEXADDR:HEXLENGTH</div>
    753 <div class="line">-e  : Manually specify an Area that should not overlap -e:NAME:HEXADDR:HEXLENGTH</div>
    754 <div class="line">-b  : Set hex bytes treated as Empty in ROM files (.gb/etc) -b:HEXVAL[...] (default FF)</div>
    755 <div class="line">-E  : All areas are exclusive (except HEADERs), warn for any overlaps</div>
    756 <div class="line">-q  : Quiet, no output except warnings and errors</div>
    757 <div class="line">-Q  : Suppress output of warnings and errors</div>
    758 <div class="line">-R  : Return error code for Area warnings and errors</div>
    759 <div class="line"> </div>
    760 <div class="line">-sR : [Rainbow] Color output (-sRe for Row Ends, -sRd for Center Dimmed, -sRp % based)</div>
    761 <div class="line">-sP : Custom Color Palette. Colon separated entries are decimal VT100 color codes</div>
    762 <div class="line">      -sP:DEFAULT:ROM:VRAM:SRAM:WRAM:HRAM (section based color only)</div>
    763 <div class="line">-sC : Show Compact Output, hide non-essential columns</div>
    764 <div class="line">-sH : Show HEADER Areas (normally hidden)</div>
    765 <div class="line">-smROM  : Show Merged ROM_0  and ROM_1  output (i.e. bare 32K ROM)</div>
    766 <div class="line">-smWRAM : Show Merged WRAM_0 and WRAM_1 output (i.e DMG/MGB not CGB)</div>
    767 <div class="line">          -sm* compatible with banked ROM_x or WRAM_x when used with -B</div>
    768 <div class="line">-sJ   : Show JSON output. Some options not applicable. When used, -Q recommended</div>
    769 <div class="line">-nB   : Hide warning banner (for .cdb output)</div>
    770 <div class="line">-nA   : Hide areas (shown by default in .cdb output)</div>
    771 <div class="line">-z    : Hide areas smaller than SIZE -z:DECSIZE</div>
    772 <div class="line">-nMEM : Hide banks matching case sensitive substring (ex hide all RAM: -nMEM:RAM)</div>
    773 <div class="line"> </div>
    774 <div class="line">Use: Read a .map, .noi, .cdb or .ihx file to display area sizes</div>
    775 <div class="line">Example 1: &quot;romusage build/MyProject.map&quot;</div>
    776 <div class="line">Example 2: &quot;romusage build/MyProject.noi -a -e:STACK:DEFF:100 -e:SHADOW_OAM:C000:A0&quot;</div>
    777 <div class="line">Example 3: &quot;romusage build/MyProject.ihx -g&quot;</div>
    778 <div class="line">Example 4: &quot;romusage build/MyProject.map -q -R&quot;</div>
    779 <div class="line">Example 5: &quot;romusage build/MyProject.noi -sR -sP:90:32:90:35:33:36&quot;</div>
    780 <div class="line">Example 6: &quot;romusage build/MyProject.map -sRp -g -B -F:255:15 -smROM -smWRAM&quot;</div>
    781 <div class="line">Example 7: &quot;romusage build/MyProject.gb  -g -b:FF:00&quot;</div>
    782 <div class="line"> </div>
    783 <div class="line">Notes:</div>
    784 <div class="line">  * GBDK / RGBDS map file format detection is automatic.</div>
    785 <div class="line">  * Estimates are as close as possible, but may not be complete.</div>
    786 <div class="line">    Unless specified with -m/-e they *do not* factor regions lacking</div>
    787 <div class="line">    complete ranges in the Map/Noi/Ihx file, for example Shadow OAM and Stack.</div>
    788 <div class="line">  * IHX files can only detect overlaps, not detect memory region overflows.</div>
    789 <div class="line">  * CDB file output ONLY counts (most) data from C sources.</div>
    790 <div class="line">    It cannot count functions and data from ASM and LIBs,</div>
    791 <div class="line">    so bank totals may be incorrect/missing.</div>
    792 <div class="line">  * GB/GBC/ROM files are just guessing, no promises.</div>
    793 </div><!-- fragment --> </div></div><!-- contents -->
    794 </div><!-- PageDoc -->
    795 </div><!-- doc-content -->
    796 <!-- start footer part -->
    797 <div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
    798   <ul>
    799     <li class="navelem"><a class="el" href="index.html">General Documentation</a></li>
    800     <li class="footer">Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.2 </li>
    801   </ul>
    802 </div>
    803 </body>
    804 </html>

This webpage is intended to be an accessible preview of this repository. To get a fuller picture, clone it and use the git CLI.