Contiki on Oric Atmos?
Posted: Fri Jan 20, 2006 3:37 am
Most of you probably know about the operating system Contiki, which was developed primarily for Commodore 64. It has been ported to a lot of other 6502 based systems, as well as other CPUs. The operating system is written in C, tailored for the cc65 compiler. I know Oric developers may prefer a different C compiler though.
cc65 today has limited support for Oric Atmos. Simple programs can be compiled, but there is no true file I/O and a lot of other shortcomings in the library. There exists a high resolution graphics driver though.
While I played around with compiling the latest release of Contiki for VIC-20 (which I'm the port maintainer of), I decided to see how far an Oric port would go. Without file I/O, the dynamically loaded modules would have to be linked statically to the executable. In my attempts so far, I forgot to link the required modules, so when I start the system, almost nothing happens..
From my experience with the VIC-20 port, it appears that about 40K of available RAM is the least required to get Contiki running with a basic window system and network support. The C64 can switch out the ROMs and get all 64K available. How much memory can I expect to squeeze out from a 48K Oric Atmos? Are there some special tricks, and would they be easy to apply from C?
Is anyone interested in Contiki? Is there some support (file I/O, other interesting library functions) in the OSDK that could be transferred to cc65? Which of the compilers generate the best code and is most complete, i.e. is it likely that Contiki would compile with lcc65? I know from attempts to run it on Z80 platforms, that both z88dk and sdcc were incompatible but after much tweaking there was an Amstrad CPC port last year.
cc65 today has limited support for Oric Atmos. Simple programs can be compiled, but there is no true file I/O and a lot of other shortcomings in the library. There exists a high resolution graphics driver though.
While I played around with compiling the latest release of Contiki for VIC-20 (which I'm the port maintainer of), I decided to see how far an Oric port would go. Without file I/O, the dynamically loaded modules would have to be linked statically to the executable. In my attempts so far, I forgot to link the required modules, so when I start the system, almost nothing happens..
From my experience with the VIC-20 port, it appears that about 40K of available RAM is the least required to get Contiki running with a basic window system and network support. The C64 can switch out the ROMs and get all 64K available. How much memory can I expect to squeeze out from a 48K Oric Atmos? Are there some special tricks, and would they be easy to apply from C?
Is anyone interested in Contiki? Is there some support (file I/O, other interesting library functions) in the OSDK that could be transferred to cc65? Which of the compilers generate the best code and is most complete, i.e. is it likely that Contiki would compile with lcc65? I know from attempts to run it on Z80 platforms, that both z88dk and sdcc were incompatible but after much tweaking there was an Amstrad CPC port last year.