GPASM(1)
β¨ GPASM(1) β¨
okay so bestie, gather round, because today we're talking about gpasm, aka the GNU PIC assembler, and it's from the Linux user's manual section 1 π
π NAME π
gpasm β the GNU PIC assembler, no cap π«Ά
πΈ SYNOPSIS πΈ
gpasm [options] file
β οΈ WARNING β οΈ
bestie. real talk. π¨ The info in this man page is an extract from the full documentation of gputils, and it's limited to the meaning of the options. For the complete and current docs, go read "gputils.ps" β it lives in the gputils docs directory. This is the teaser trailer, not the whole movie. π
π¦ DESCRIPTION π¦
gpasm is an assembler for Microchip (TM) PIC (TM) micro-controllers. It's intended to be compatible with the manufacturer's MPASM assembler. gpasm is part of gputils, and honestly? iconic. π
Check the gputils(1) manpage for details on the other GNU PIC utilities β the whole fam is there. π
π OPTIONS π
Below is a summary of the gpasm options. And listen: gpasm options always supersede any settings in the source code. Always. The command line is the main character here. π
-a FMT,--hex-format FMTβ GPASM supportsinhx8m,inhx8s,inhx16, andinhx32hex file formats. This option controls which hex file format is used. The default isinhx32. β¨-c,--objectβ Output a relocatable object (new COFF format).-C,--old-coffβ Output a relocatable object (old COFF format).-d,--debugβ Output debug messages. Spill the tea, gpasm. π-D SYM=VAL,--define SYM=VALβ DefineSYMwith valueVAL. This is equivalent to placing#define SYM VALin the source. Same energy, less typing. π-e [ON|OFF],--expand [ON|OFF]β Macro expansion in the listing file is controlled using theEXPANDandNOEXPANDdirectives. This option can force either directive to be ignored. When"ON"is selected the macros are always expanded regardless of the presence ofNOEXPAND. Likewise,"OFF"will force macros not to be expanded. Not me overriding your directives. π-f,--full-addressβ Show full address in.lstfile at the memory map region.-g,--debug-infoβ Use debug directives for COFF.-h,--helpβ Show the usage message and exit. Baby's first flag. π-i,--ignore-caseβ All user defined symbols and macros are case sensitive. This option makes them case insensitive.-I DIR,--include DIRβ The top level assembly file is passed togpasmas an argument. This file can containINCLUDEdirectives. These directives open the specified file and then its contents are assembled. GPASM searches for these files in the local directory. If the file is not located, the default header path is checked. Finally, all paths specified using this argument are searched. It's giving very thorough search order. π-j,--sdcc-dev16-listβ Help to the extension of thepic16devices.txtfile in the sdcc project. Using by itself, displays the all'16e'devices. Along with the'-p'option, shows only the specified device.-k,--errorβ Enables creation of the error file.-l[12[ce]|14[cef]|16[ce]],--list-chips[=([12[ce]|14[cef]|16[ce]])]β List supported processors based on various aspects. (f=>x)-L,--force-listβ IgnoreNOLISTdirectives. This forcesgpasmto print every line assembled in the list file output. No hiding, we see everything. π-m,--dumpβ Upon completion of the final pass of assembly, display the contents of instruction memory.--mpasm-compatibleβ This option sets the MPASM compatibility mode.-M,--depsβ Output a dependency file.-n,--dosβ By default,gpasmgenerates hex files using ISO format. However, some device programmers required a DOS formatted file. This option will causegpasmto generate a DOS formatted hex file. Old school, but valid. πΎ-o FILE,--output FILEβ Alternate name of output files. Option effect of:- If the
"-c"option included in the command line:FILE.o,FILE.lst,FILE.err- (The
"FILE.o"should specified.)
- If the
"-c"option not included in the command line:FILE.hex,FILE.cod,FILE.lst,FILE.err- (The
"FILE.hex"should specified.)
- If the
-p PROC,--processor PROCβ Select the processor.-P FILE,--preprocess FILEβ Write preprocessed asm file toFILE.-q,--quietβ Suppress anything sent to standard output. π€«-r RADIX,--radix RADIXβ The supported radices areBIN,DEC,OCT, andHEX. The default isHEX.-s[12[ce]|14[cef]|16[ce]],--list-processor-properties[=([12[ce]|14[cef]|16[ce]])]β Lists properties of the processors. Using by itself, displays the all devices or group of the devices. Along with the'-p'option, shows only the specified device. (f=>x)-S [0|1|2],--strict [0|1|2]β Set the strict level of the recommended instruction-parameters (WorFandAorB). The"strict messages"have higher priority than the warnings. (See:-w [0|1|2])[0]0: Is the default. No strict messages.1: Show warning messages if one of is missing.2: Show error messages if one of is missing.
-t,--sdcc-dev14-listβ Help to the extension of thepic14devices.txtfile in the sdcc project. Using by itself, displays the all'14'and'14e'devices. Along with the'-p'option, shows only the specified device.--strict-optionsβ If this is set, then an option may not be parameter of an another option. For example:-I -c. Yeah, no nesting options, bestie, that's the rule. π«-u,--absoluteβ Use absolute paths.-v,--versionβ Show the version information and exit.-w [0|1|2],--warning [0|1|2]β This option sets the message level.0: Is the default. It will allow all messages, warnings and errors to be reported.1: Will suppress the messages.2: Will suppress the messages and warnings.
-X,--macro-dereferenceβ Use the source from where the macro was invoked for errors.-y,--extendedβ Enable 18xx extended mode.
π₯ SEE ALSO π₯
π AUTHOR π
Craig Franklin <craigfranklin@users.sourceforge.net>
π COPYRIGHT π
Copyright (C) 2002, 2003, 2004, 2005 James Bowman, Craig Franklin
This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
and that's the whole thing bestie!! π this page is from gputils-1.5.2, dated 2016-02-28, and it's the GPASM(1) page from the Linux user's manual. slay, go assemble something iconic β¨π¦π
π¦ where this page comes from
- arch rolling: gputils 1.5.2-2 Β· GPL
- debian trixie: gputils 1.5.2-1
- fedora 43: gputils 1.5.2-9.fc43 Β· GPL-2.0-or-later
- fedora 44: gputils 1.5.2-10.fc44 Β· GPL-2.0-or-later
- nixos 26.05: gputils 1.5.2
- nixpkgs unstable: gputils 1.5.2
- opensuse-leap 16.0: gputils 1.5.2-bp160.1.13 Β· GPL-2.0-or-later
- opensuse-leap 16.0: gputils 1.5.2-bp160.1.13 Β· GPL-2.0-or-later
- opensuse-leap 16.0: gputils 1.5.2-bp160.1.13 Β· GPL-2.0-or-later
- opensuse-leap 16.0: gputils 1.5.2-bp160.1.13 Β· GPL-2.0-or-later
- ubuntu questing: gputils 1.5.2-2
- ubuntu resolute: gputils 1.5.2-2build1
- ubuntu stonking: gputils 1.5.2-2build1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms