Commit graph

13 commits

Author SHA1 Message Date
oliverschmidt 62ca797fad The recent change turning uip_buf from an array to a pointer increases the code generated by cc65 significantly :-(
This change modifies the set of modules placed in the Apple2 Language Card to again make maximum use of that memory without overflow.
2010-05-07 21:02:35 +00:00
oliverschmidt 50be40768b Removed closing of stdin, stdout (and stderr on the Apple2). It was introduced in order to maximize the number of available file handles for the webserver. However none of the target machine DOSes allows to open a single file several times diminishing the intended effect very much. One the other hand not being able to "just printf() something" causes trouble over and again - i.e. hello-world seemingly not working...after all a typical case of german over-enigneering ;-) 2010-02-10 07:43:25 +00:00
oliverschmidt 3826b8c0c4 Use only the base name of projects as program file name. 2010-01-31 18:21:41 +00:00
oliverschmidt 953d3ce7a0 Now that we have at least two examples working on the cc65 targets it is preferable to not name the program files all 'contiki'. 2010-01-31 09:34:12 +00:00
oliverschmidt 882e4692c7 cc65 2.13. allows to define all necessary paths through the single env var CC65_HOME. 2010-01-27 22:37:15 +00:00
oliverschmidt caaa790add cc65 2.13. comes with secondary linker configs. The 'apple2enh-reboot.cfg' is more or less what was previously engineered as part of Contiki for the Apple2 - now moved into the cc65 distro. 2009-10-18 10:06:44 +00:00
oliverschmidt 2ede893aa6 The feature set of gnumake is really frightening: This time I discovered 'target-specific variable values'... 2008-05-26 11:26:57 +00:00
oliverschmidt f74503c23c Replace non-fully-functional hack with the new gnumake variable CONTIKI_PROJECT. 2008-05-26 10:13:32 +00:00
oliverschmidt a78a7dedbc Added make target 'disk' for creating a .dsk disk image using AppleCommander. 2008-05-22 22:21:43 +00:00
oliverschmidt 85edbc01db Starting with the cc65-snapshot-2.11.9.20080316 the Apple2 C-library supports placing code in the Apple2 Language Card by choosing the code segment 'HIGHCODE'. By default the memory area 0xD400 - 0xE000 is used for HIGHCODE. If the application doesn't need the ProDOS 8 QUIT code then the memory area used for HIGHCODE may be extended to 0xD000 - 0xE000.
Contiki now leverages that feature to place process.o, etimer.o and uip_arp.o in HIGHCODE. These files were carefully chosen as:
- they are necessary for all Ethernet apps
- their size doesn't depend on configuration macros
- they fill the available space nicely (with a little reserve for changes in the source or the compiler)
2008-03-24 22:49:00 +00:00
oliverschmidt 852d2c0283 Introduced very lightweight pfs implementation based on Apple ProDOS.
ProDOS requires for each opened file a user-supplied page-aligned 1024 byte i/o buffer. This makes the generic POSIX file i/o library contained in the cc65 C-library quite heavyweight.

In contrast the lightweight pfs implementation uses the uIP packet buffer as ProDOS i/o buffer. Therefore:
- Only one file may be open at any time.
- That file may not be open while the uIP packet buffer is used by uIP. The open()/read()/close() sequence should be completed before Contiki event scheduling or inside handling a single Contiki event.
- The uIP packet buffer must be large enough to hold the ProDOS I/O buffer. Depending on the position of the uIP buffer in memory this means between 1024 and 1024 + 256 bytes. Therefore in an Ethernet environment setting the MTU_SIZE to at least 1266 is safe (So the default of 1500 is just fine).
2008-01-01 18:49:50 +00:00
oliverschmidt fe023c6d3e Introduced very lightweight log implementation not depending on any file I/O library. 2007-12-21 00:43:57 +00:00
oliverschmidt 00101cc177 Added support for the cc65 target 'apple2enh' (Enhanced Apple //e). 2007-01-03 10:29:17 +00:00