Commit Graph

  • 3b59a8ca6f Mark tokens with the file position from where they're read. Restore this position for tokens read from a token list. This means that line info does now show the actual point of definition. This is an improvement but needs to be refined. uz 2011-01-20 20:54:30 +00:00
  • ddb7296b6c Move all attributes and other information that is attached to a token into a structure named Token. uz 2011-01-16 16:05:43 +00:00
  • dbfae85f54 Renamed the Token enumeration to token_t. uz 2011-01-16 14:51:13 +00:00
  • 1d36b7f1b3 Add missing braces in macro definition. No error but could cause one. uz 2011-01-16 14:19:58 +00:00
  • e2485f100e Removed two defines that are no longer in use. uz 2011-01-16 14:18:03 +00:00
  • 57bd3bb346 Added a test program for division and modulo operation. uz 2011-01-11 17:19:16 +00:00
  • 4a32e84639 Fixed an error in the division routine: The high byte of the wrong 16 bit value was checked before entering the faster 16b8 division routine. uz 2011-01-11 17:08:29 +00:00
  • 839e2c4202 Added new .FATAL pseudo op. uz 2011-01-09 11:00:22 +00:00
  • bee54df029 Allow to set the ProDOS type and auxtype on creating new files in a similiar way done on the CBMs. ol.sc 2011-01-05 16:09:08 +00:00
  • d60c627cb6 When replaying a token list, be sure to zero terminate the string attribute of a token. uz 2011-01-05 10:47:32 +00:00
  • a2ec97ac13 More changes by Karri Kaksonen. uz 2011-01-04 19:39:07 +00:00
  • 78c2b66e58 When collecting tokens to be repeated inside of a .REPEAT section, do this in raw token mode, otherwise stuff is already partially evaluated. uz 2011-01-04 19:17:20 +00:00
  • 338844cb2e Patch by Gary Wong: The smbx and rmbx instructions are two byte insns (not one byte). uz 2010-12-30 19:35:10 +00:00
  • 212941ddb4 Fix consecutive false errors when a label without a following statement is encountered. uz 2010-12-30 19:30:54 +00:00
  • 38ebc6618d Bug fixes by Karri Kaksonen. uz 2010-12-30 19:05:33 +00:00
  • d993b332a4 Lynx update including file routines that access a file system on a cartridge by Karri Kaksonen. uz 2010-12-29 10:37:57 +00:00
  • 4a92522c82 In the generated assembly file, add import statements for all zero page variables known by the runtime. They aren't currently accessed by the compiler itself but may be useful for inline assembly. uz 2010-12-29 10:18:29 +00:00
  • f11067e260 Latest versions of startup code and config by Karri Kaksonen. Citing: The new header contains an encrypted loader, a small directory structure and a single pixel black title screen. This is directly bootable on a real Lynx. uz 2010-12-22 15:37:20 +00:00
  • a7b6b6dd10 set required memory for graphics mode 28 to 162 instead of 160. Report by Abel Carrasco. cpg 2010-12-21 21:17:52 +00:00
  • a3493d5e72 New versions that match the current TGI API by Karri Kaksonen. uz 2010-12-20 07:20:49 +00:00
  • 0d5267fc1a Added an implementation of toascii() for the Lynx, contributed by Karri Kaksonen. uz 2010-12-19 11:49:58 +00:00
  • 72d5d040d8 Fixed order of -o and -t on the linker command line. uz 2010-12-04 18:13:47 +00:00
  • e61173fe9e Reorder -o and -t on the linker command line. uz 2010-12-04 18:09:50 +00:00
  • e0d3936705 Document that -t changes not only the character translation table, but also the default CPU. uz 2010-11-29 20:13:32 +00:00
  • 3f5b2a8fbd Allow to disable the "Result of comparison is constant" warning. uz 2010-11-28 21:16:46 +00:00
  • e907b57e9c Added kernal replacement routines for RDTIM and SETTIM. uz 2010-11-25 20:39:46 +00:00
  • 94f1a17a47 Renamed grc -> grc65. uz 2010-11-25 17:29:59 +00:00
  • 3ed2aff26a ignore property modified to reflect the current name of grc65 silverdr 2010-11-24 00:33:41 +00:00
  • e1e0f7418a svn access test only silverdr 2010-11-20 17:11:15 +00:00
  • 3722fabf71 Renamed grc -> grc65. uz 2010-11-18 22:09:36 +00:00
  • 1aa31c8c4a In docs for -t: Fixed duplicate target entry for "atmos", added "module" which was missing. Reported by silverdr@wfmh.org.pl. uz 2010-11-18 22:04:03 +00:00
  • bb1d6d94a3 Renamed grc to grc65 to avoid name conflicts with another software named grc. uz 2010-11-18 18:47:01 +00:00
  • 81cfbe06c6 Changed the startup module and the linker config for the Commodore VIC to use the common loadaddr and exehdr modules. uz 2010-11-17 13:35:43 +00:00
  • 9a9cea5a61 Changed the startup module and the linker config for the Commodore PET to use the common loadaddr and exehdr modules. uz 2010-11-17 13:27:43 +00:00
  • 7252f071a2 Changed the startup module and the linker config for the C128 to use the common loadaddr and exehdr modules. uz 2010-11-17 13:00:34 +00:00
  • da59130820 Changed the startup module and the linker config for the C16 to use the common loadaddr and exehdr modules. uz 2010-11-17 12:46:55 +00:00
  • 8aff2a9159 Fixed a problem with the last change in crt0.s: The symbols for the RAM memory area had been used but not defined in the linker config. Changed the startup module and the linker config to use the common loadaddr and exehdr modules. uz 2010-11-16 17:33:25 +00:00
  • 461bf5e81e Fixed wrong size of HEADER area. The invalid size had no bad effects, but it was wrong anyway. uz 2010-11-16 17:30:42 +00:00
  • 0e0bb60d21 Removed some left over debug output uz 2010-11-16 10:14:56 +00:00
  • 85c157f8fa Removed the code that checks for valid/invalid chars in a filename. Actually most characters are valid, and even the remaining ones do something more or less useful. uz 2010-11-15 21:50:58 +00:00
  • 74d8048d9a Docs for new c64-asm.cfg. uz 2010-11-14 17:00:40 +00:00
  • dfd4c0ab63 Limit RAM area to $CFFF instead of $FFFF. uz 2010-11-14 17:00:21 +00:00
  • b6d872e5b7 Added the first implementation of a linker config suited for c64 assembly programs. uz 2010-11-14 13:11:09 +00:00
  • 413491d1b2 Modified the builtin c64 config to force inclusion of the new exehdr module. uz 2010-11-14 11:51:43 +00:00
  • 577247df58 As a test, remove the SYS header from the startup code and use the one supplied by the new exehdr module. uz 2010-11-14 11:51:05 +00:00
  • 62e39780bc Added a module that contains a small basic stub (SYS header) that starts machine language code following it. Using this header, machine language programs linked to this stub can be started using RUN. uz 2010-11-14 11:50:38 +00:00
  • e9ce157bb7 Fixed typos. ol.sc 2010-11-14 00:03:22 +00:00
  • 268e093469 Fix order of command line arguments: -o should precede -C or -t. uz 2010-11-13 22:52:13 +00:00
  • 09a62690f3 Fixed typo in warning message. uz 2010-11-13 22:48:39 +00:00
  • 36dc806193 Force inclusion of the load address. uz 2010-11-13 16:57:42 +00:00
  • 9948b5acfe Remove the load address since it's supplied in its own module now. uz 2010-11-13 16:57:23 +00:00
  • ae922930a1 New module that contains the load address expected by the Commodore machines in the first two bytes of a file loaded with LOAD. uz 2010-11-13 16:56:42 +00:00
  • 4786caf496 For modules, the ZP memory area must be written to the output file. This is required by the logic in the linker. uz 2010-11-13 10:20:28 +00:00
  • c797be4767 Add an additional file = "" to memory areas that contain only bss or zp type segments and aren't written to the output file. Before that, the "not going to output file" was implicit because of the bss type of the segments contained. The new attribute makes this explicit. uz 2010-11-12 19:59:02 +00:00
  • de14990fbb Define the __XX_START__ symbol for a memory area earlier, so it may be used in the expression for the size of the same area. uz 2010-11-12 18:01:31 +00:00
  • 5e8252fa36 Reworked and improved the SYMBOLS section. The old syntax (using symbol = value) is now gone, attributes are used instead. The SYMBOLS section does now support imports, so the linker config can be used to force symbols (and therefore module) imports. Evaluation of start address and size for memory areas has been delayed even further, so it is now possible to use the values from one memory area in the definition of the next one. uz 2010-11-12 14:17:35 +00:00
  • a0a0347ecc Make the Name and Col fields unsigned instead of short. uz 2010-11-12 14:14:27 +00:00
  • c59eeb3110 make.sgml has been renamed to using-make.sgml. uz 2010-11-11 07:06:41 +00:00
  • 9c341fbccb Avoid name conflict with 'make.info'. ol.sc 2010-11-10 21:38:07 +00:00
  • 7c1094c086 Keep the config file position in a FilePos structure. uz 2010-11-10 19:52:40 +00:00
  • c695829813 Added a static initializer for struct FilePos. uz 2010-11-10 19:16:29 +00:00
  • 3f24c88355 SegNum has been renamed to SecNum. uz 2010-11-10 10:22:55 +00:00
  • 7bd19b737a One more place where OutputNameUsed must be flagged. uz 2010-11-09 22:07:45 +00:00
  • fa1b5047dd Fixed order of options in call to ld65, which became important after the latest changes. uz 2010-11-09 21:33:14 +00:00
  • a2b7ef2b08 Merge CfgProcess and CfgAssignSegments because both do some sort of postprocessing. Print a warning if %O was used in the config file and the output file name is changed later using -o. uz 2010-11-09 21:01:27 +00:00
  • c9b9069208 Better handling of imports in the ExprNode structure. uz 2010-11-09 20:34:08 +00:00
  • da792b3fd0 Separate processing the linker config file into two phases: The config file is read when the -t or -C switch is encountered and parts of it are processed. The remaining parts are processed when all object files and libraries have been read. To make this work, the expression evaluation in cfgexpr has been rewritten to generate true expression trees. This means that expressions in the linker config may use exports from the object files. uz 2010-11-08 21:52:24 +00:00
  • 6c0a9c0438 Patch to correct the linkorder in the make files to make the --as-needed ldflag work. By Mario Fetka. uz 2010-11-07 11:34:51 +00:00
  • f1ce44edfe Fixed register info for several runtime functions. Info for the Y register was wrong, so the optimizer assumed it wouldn't change across a call. uz 2010-11-02 18:05:19 +00:00
  • 60e5c885e8 Ignore some automatically generated files. uz 2010-10-30 20:13:26 +00:00
  • f0d0e4e543 really use default drive cpg 2010-10-29 19:53:45 +00:00
  • 3386876fd3 __defdev is not dependent on DYNAMIC_DD cpg 2010-10-29 19:52:31 +00:00
  • 50becf541b fix for files with no extension cpg 2010-10-29 19:25:01 +00:00
  • c345e8fc46 add Atari version cpg 2010-10-28 21:13:52 +00:00
  • 5f006333bf add posixdirent.s by Stefan Haubenthal cpg 2010-10-28 21:03:05 +00:00
  • 03ed1b3a6a some fixes cpg 2010-10-28 21:02:09 +00:00
  • 1aeb5651f5 initial version by Stefan A. Haubenthal cpg 2010-10-28 20:55:18 +00:00
  • ef5f3970e5 Added missing drivers. uz 2010-10-10 13:43:41 +00:00
  • e14435685f Added CH_ENTER define. ol.sc 2010-10-02 21:34:49 +00:00
  • 8c0c1e1ed9 According to a recent discussion CH_ENTER should generally *not* be defined based on '\n'. ol.sc 2010-10-02 21:20:25 +00:00
  • d08ff2b6df Fix parsing of push/pop so that #pragma warn works without. uz 2010-10-02 19:43:18 +00:00
  • e048d2aeba Make the warning "statement has no effect" switchable. uz 2010-10-02 19:32:11 +00:00
  • d1f5b74f01 Now that we reduce the size of the RAM memory area by the stacksize in the linker configuration we need to add the stacksize to end of the RAM area when setting the initial stack pointer in the startup code. ol.sc 2010-10-02 10:37:20 +00:00
  • eef8ecc74d User linker generated symbols for stack placement (like most other targets) instead of a hardcoded constant in order to allow control of stack placement via linker configuration. ol.sc 2010-10-02 10:32:26 +00:00
  • aaf90c1252 Exclude (small) stack from RAM memory area (like on most other targets) to make explicit that the linker may not use all RAM. If the cc65 parameter stack isn't used at all the __STACKSIZE__ symbol may be overridden on the linker command line with -D __STACKSIZE__=0. ol.sc 2010-10-02 10:20:00 +00:00
  • 172d33e584 Fixed problem with last change: Static declaration do also set the SC_EXTERN flag (have to check why). uz 2010-08-24 07:28:08 +00:00
  • 5aff0764a1 Allow initialization of variables declared with "extern". uz 2010-08-23 18:18:53 +00:00
  • 1708ec318b Updated GEOS TGI driver by Maciej Witkowiak. uz 2010-08-17 21:14:30 +00:00
  • 674289e471 use ReadVar to read the type. This doesn't make a difference for now but will come handy later. Add output for all of the symbol flags from symdefs.h. uz 2010-08-17 21:04:28 +00:00
  • 017bdf970a Include information about the type of the symbol in the flags written to the object file. uz 2010-08-17 20:54:02 +00:00
  • 112ae0e3db Renamed the defines in symdefs.h to something more meaningful. They were named EXP_xxx for historic reasons, but SYM_ does make much more sense now. uz 2010-08-17 20:47:27 +00:00
  • d62af9de80 Debug symbolid for each symbol that goes into the debug symbol output. uz 2010-08-17 20:11:27 +00:00
  • b2b2a05a46 SF_INDEXED is no longer needed. uz 2010-08-17 20:02:30 +00:00
  • c921c409e8 Rename symbol index => import id because that's what it really is. uz 2010-08-17 20:01:54 +00:00
  • e55b19fa8b Maintain some additional information for scopes. Write a dummy scope section into the object file. uz 2010-08-17 16:58:41 +00:00
  • 41c119deca Bumped the year in the copyright notice. It hasn't changed for five years:-) uz 2010-08-11 19:43:48 +00:00
  • 1a4a02821e New function cc65_symbol_inrange. Fixed an error in cc65_symbol_byname. Restructured the dbgtest.c source. uz 2010-08-11 19:31:30 +00:00
  • d627b1ac83 First support for symbols - mostly untested. uz 2010-08-09 22:05:44 +00:00
  • 03d3868d45 Start adding (limited) support for symbols. uz 2010-08-09 21:29:15 +00:00
  • 7e72e7d46b Change output for symbols in the debug info file to match that of the other lines. The name is now preceeded by "name=". uz 2010-08-09 21:28:47 +00:00