/**************************************************************************** OS/A65 Version 2.0.0 Multitasking Operating System for 6502 Computers Copyright (C) 1989-1998 Andre Fachat 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. ****************************************************************************/ /***************************************************************************/ /* These defines control the ROM build */ /* */ #define ROM /* These are necessary for embedded kernel *********************************/ #define NOMMU #define NOSYSPORT #undef CLK2MHZ /* we only have approx. 1 MHz ... */ #undef CMOSCPU /* ... and CMOS cpu ? not if we keep save */ #define RAMTEST #define NOMIRRORMEM /* These are changeable ****************************************************/ #define MIN_MEM $04 /* minimum memory we need in system env. to work ok, in pages */ #define RAMEND $20 /* where the ROM starts (in pages) */ #define MEMINIVAL 0 /* Clear memory to 0 on boot */ #undef STACKCOPY /* if defined, save stack area in memory when context switching, otherwise divide stack area and give each task a part. It's faster without, but allows more tasks with */ #undef NMIDEV /* necessary for fast RS232 */ #define NO_STREAMS /* no stream handling code included */ #define NO_FSM /* no filesystem manager code included */ #define NO_SEM /* no semaphore code */ #define NO_SEND /* no SEND/RECEIVE/XRECEIVE calls */ #define NO_DEVICE /* no DEVICE handling */ #define EOK_SEPARATE /* include kernel/end.a65 separately */ #undef EOK_NOFILL /* don't fill ROM till $ffff */ /***************************************************************************/ /* You should include your application files below */ /* */ #include "config.i65" #include "kdefs.i65" #include "kernel.i65" .word $2000 .( /* * This inverses the order in which the kernel is assembled. * This need not be but is working when EOK_SEPARATE is set. */ #include "kernel/kernel.a65" .dsb 64,0 ; this is only to identify the kernel end in hexdump ; and can be removed /* * Here come the application files. */ ROMSTART =* #include "devices/romdev.a65" .word -1 /* * This ends the kernel by filling till $fff* and putting the reset vectors */ #include "kernel/end.a65" .)