Commit graph

4 commits

Author SHA1 Message Date
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