rc2014: we are ready to do the swap logic but not yet there
authorAlan Cox <alan@linux.intel.com>
Mon, 3 Sep 2018 20:17:24 +0000 (21:17 +0100)
committerAlan Cox <alan@linux.intel.com>
Mon, 3 Sep 2018 20:17:24 +0000 (21:17 +0100)
Kernel/platform-rc2014/README
Kernel/platform-rc2014/config.h
Kernel/platform-rc2014/discard.c

index 9424d39..e7d8636 100644 (file)
@@ -11,13 +11,17 @@ Sergey Kiselev <skiselev@gmail.com>, and others.
 Supported Hardware
 
        RC2014 Z80 card or compatible
+
        512K ROM / RAM board. This board is basically a clone of the memory
        management subsystem of the Zeta V2. It replaces the RC2014's
        default ROM and RAM boards.
+
        A serial IO board. Either an RC2014 SIO/2 board or a 68B50 ACIA board.
        If you have a Scott Baker SIO/2 card you'll need to see config.h
        CTC board at 0x90
 
+       DS1302 RTC at 0xC0
+
        Options:
 
        VFD Display. If config.h:CONFIG_VFD_TERM is defined, then the VFD
@@ -43,12 +47,16 @@ Configuration
 
 Things that don't work
 
-  * The RC2014 doesn't come with a clock.
-
   * Flow control isn't yet enabled for the serial port.
 
+  * SIO baud rate setting etc has not been tackled
+
 Stuff To Do
 
+  * SIO v ACIA detection is bust
+
+  * Weird hangs if left idle at bootprompt for ages
+
   * Rework the CTCs if we can so we use CTC0 as a timer for the CTC clock and
     use CTC1 to count CTC0 overflows. That way we can use the CTC0 interrupt
     and the CTC1 value together in order to a) spot missed events and b) allow
index 3e592ab..d2006d9 100644 (file)
@@ -25,7 +25,7 @@
 #define KERNTOP     0xC000  /* Top of kernel (first 3 banks), base of shared bank */
 #define PROC_SIZE   64   /* Memory needed per process */
 
-#define SWAPDEV     (swap_dev) /* A variable for dynamic, or a device major/minor */
+//#define SWAPDEV     (swap_dev)       /* A variable for dynamic, or a device major/minor */
 extern unsigned int swap_dev;
 #define SWAP_SIZE   0x79       /* 60.5K in blocks (prog + udata) */
 #define SWAPBASE    0x0000     /* start at the base of user mem */
index 9d92750..19ea303 100644 (file)
@@ -61,11 +61,12 @@ void platform_swap_found(uint8_t letter, uint8_t m)
   n = blk->lba_count[m - 1] / SWAP_SIZE;
   if (n > MAX_SWAPS)
     n = MAX_SWAPS;
+#ifdef SWAPDEV
   while(n)
     swapmap_add(n--);
+#endif
 }
 
-
 void device_init(void)
 {
        ds1302_init();