diff --git a/configs/xtrs/include/board.h b/configs/xtrs/include/board.h index 97282fe5558..7a3050d6f91 100644 --- a/configs/xtrs/include/board.h +++ b/configs/xtrs/include/board.h @@ -60,6 +60,9 @@ extern "C" { #define EXTERN extern #endif +EXTERN void z80_lowputc(char ch) __naked; +EXTERN char z80_lowgetc(void) __naked; + #undef EXTERN #if defined(__cplusplus) } diff --git a/configs/xtrs/nsh/defconfig b/configs/xtrs/nsh/defconfig index 62d4047b309..d5467c86986 100644 --- a/configs/xtrs/nsh/defconfig +++ b/configs/xtrs/nsh/defconfig @@ -110,8 +110,13 @@ CONFIG_LINKER_CODE_AREA=0x5300 # CONFIG_JULIAN_TIME - Enables Julian time conversions # CONFIG_START_YEAR, CONFIG_START_MONTH, CONFIG_START_DAY - # Used to initialize the internal time logic. +# CONFIG_HAVE_LOWUARTINIT - Provides low-level UART initialization +# logic as up_lowuartinit (only needed if there is no +# serial driver). # CONFIG_DEV_CONSOLE - Set if architecture-specific logic # provides /dev/console. Enables stdout, stderr, stdin. +# CONFIG_DEV_LOWCONSOLE - Use the simple, low-level serial console +# driver (minimul support) # CONFIG_EXAMPLE=nsh CONFIG_DEBUG=n @@ -125,7 +130,9 @@ CONFIG_START_YEAR=2007 CONFIG_START_MONTH=2 CONFIG_START_DAY=21 CONFIG_JULIAN_TIME=n +CONFIG_HAVE_LOWUARTINIT=n CONFIG_DEV_CONSOLE=n +CONFIG_DEV_LOWCONSOLE=n # # The following can be used to disable categories of diff --git a/configs/xtrs/ostest/defconfig b/configs/xtrs/ostest/defconfig index 4561837e0a9..e7cda9a360b 100644 --- a/configs/xtrs/ostest/defconfig +++ b/configs/xtrs/ostest/defconfig @@ -110,8 +110,13 @@ CONFIG_LINKER_CODE_AREA=0x5300 # CONFIG_JULIAN_TIME - Enables Julian time conversions # CONFIG_START_YEAR, CONFIG_START_MONTH, CONFIG_START_DAY - # Used to initialize the internal time logic. +# CONFIG_HAVE_LOWUARTINIT - Provides low-level UART initialization +# logic as up_lowuartinit (only needed if there is no +# serial driver). # CONFIG_DEV_CONSOLE - Set if architecture-specific logic # provides /dev/console. Enables stdout, stderr, stdin. +# CONFIG_DEV_LOWCONSOLE - Use the simple, low-level serial console +# driver (minimul support) # CONFIG_EXAMPLE=ostest CONFIG_DEBUG=n @@ -125,7 +130,9 @@ CONFIG_START_YEAR=2008 CONFIG_START_MONTH=2 CONFIG_START_DAY=21 CONFIG_JULIAN_TIME=n +CONFIG_HAVE_LOWUARTINIT=n CONFIG_DEV_CONSOLE=n +CONFIG_DEV_LOWCONSOLE=n # # The following can be used to disable categories of diff --git a/configs/xtrs/pashello/defconfig b/configs/xtrs/pashello/defconfig index 824f86d023e..7246a8b164f 100644 --- a/configs/xtrs/pashello/defconfig +++ b/configs/xtrs/pashello/defconfig @@ -110,8 +110,13 @@ CONFIG_LINKER_CODE_AREA=0x5300 # CONFIG_JULIAN_TIME - Enables Julian time conversions # CONFIG_START_YEAR, CONFIG_START_MONTH, CONFIG_START_DAY - # Used to initialize the internal time logic. +# CONFIG_HAVE_LOWUARTINIT - Provides low-level UART initialization +# logic as up_lowuartinit (only needed if there is no +# serial driver). # CONFIG_DEV_CONSOLE - Set if architecture-specific logic # provides /dev/console. Enables stdout, stderr, stdin. +# CONFIG_DEV_LOWCONSOLE - Use the simple, low-level serial console +# driver (minimul support) # CONFIG_EXAMPLE=pashello CONFIG_DEBUG=n @@ -125,6 +130,7 @@ CONFIG_START_YEAR=2008 CONFIG_START_MONTH=2 CONFIG_START_DAY=21 CONFIG_JULIAN_TIME=n +CONFIG_HAVE_LOWUARTINIT=n CONFIG_DEV_CONSOLE=n CONFIG_DEV_LOWCONSOLE=n diff --git a/configs/xtrs/src/xtr_lowputc.c b/configs/xtrs/src/xtr_lowputc.c index be1628444e0..c85f540d2e4 100644 --- a/configs/xtrs/src/xtr_lowputc.c +++ b/configs/xtrs/src/xtr_lowputc.c @@ -77,10 +77,10 @@ ********************************************************************************/ /******************************************************************************** - * Name: up_lowputc + * Name: z80_lowputc ********************************************************************************/ -void up_lowputc(char ch) __naked +void z80_lowputc(char ch) __naked { _asm ld hl, #2 @@ -92,10 +92,10 @@ void up_lowputc(char ch) __naked } /******************************************************************************** - * Name: up_lowgetc + * Name: z80_lowgetc ********************************************************************************/ -char up_lowgetc(void) __naked +char z80_lowgetc(void) __naked { _asm call _TRS80_M3_KBDSCN ;0x002b diff --git a/configs/xtrs/src/xtr_serial.c b/configs/xtrs/src/xtr_serial.c index dbe69df678f..b6a90baf123 100644 --- a/configs/xtrs/src/xtr_serial.c +++ b/configs/xtrs/src/xtr_serial.c @@ -277,7 +277,7 @@ static int up_ioctl(struct file *filep, int cmd, unsigned long arg) static int up_receive(struct uart_dev_s *dev, uint32 *status) { -// uint8 ch = up_lowgetc(); +// uint8 ch = z80_lowputc(); *status = 0; return ch; @@ -318,7 +318,7 @@ static boolean up_rxavailable(struct uart_dev_s *dev) static void up_send(struct uart_dev_s *dev, int ch) { - up_lowputc(ch); + z80_lowputc(ch); } /**************************************************************************** @@ -409,6 +409,6 @@ void up_serialinit(void) int up_putc(int ch) { - up_lowputc(ch); + z80_lowputc(ch); return 0; } diff --git a/configs/z80sim/include/board.h b/configs/z80sim/include/board.h index eb7aa36853c..4cc4b97daf8 100644 --- a/configs/z80sim/include/board.h +++ b/configs/z80sim/include/board.h @@ -55,6 +55,9 @@ extern "C" { #define EXTERN extern #endif +EXTERN void z80_lowputc(char ch) __naked; +EXTERN char z80_lowgetc(void) __naked; + #undef EXTERN #if defined(__cplusplus) } diff --git a/configs/z80sim/nsh/defconfig b/configs/z80sim/nsh/defconfig index aa852ef8a5e..190f7af9c70 100644 --- a/configs/z80sim/nsh/defconfig +++ b/configs/z80sim/nsh/defconfig @@ -103,8 +103,13 @@ CONFIG_HAVE_LIBM=n # CONFIG_JULIAN_TIME - Enables Julian time conversions # CONFIG_START_YEAR, CONFIG_START_MONTH, CONFIG_START_DAY - # Used to initialize the internal time logic. +# CONFIG_HAVE_LOWUARTINIT - Provides low-level UART initialization +# logic as up_lowuartinit (only needed if there is no +# serial driver). # CONFIG_DEV_CONSOLE - Set if architecture-specific logic # provides /dev/console. Enables stdout, stderr, stdin. +# CONFIG_DEV_LOWCONSOLE - Use the simple, low-level serial console +# driver (minimul support) # CONFIG_EXAMPLE=nsh CONFIG_DEBUG=n @@ -118,7 +123,9 @@ CONFIG_START_YEAR=2007 CONFIG_START_MONTH=2 CONFIG_START_DAY=21 CONFIG_JULIAN_TIME=n +CONFIG_HAVE_LOWUARTINIT=n CONFIG_DEV_CONSOLE=y +CONFIG_DEV_LOWCONSOLE=n # # The following can be used to disable categories of diff --git a/configs/z80sim/ostest/defconfig b/configs/z80sim/ostest/defconfig index 50eaec58785..3907e75b7b1 100644 --- a/configs/z80sim/ostest/defconfig +++ b/configs/z80sim/ostest/defconfig @@ -103,8 +103,13 @@ CONFIG_HAVE_LIBM=n # CONFIG_JULIAN_TIME - Enables Julian time conversions # CONFIG_START_YEAR, CONFIG_START_MONTH, CONFIG_START_DAY - # Used to initialize the internal time logic. +# CONFIG_HAVE_LOWUARTINIT - Provides low-level UART initialization +# logic as up_lowuartinit (only needed if there is no +# serial driver). # CONFIG_DEV_CONSOLE - Set if architecture-specific logic # provides /dev/console. Enables stdout, stderr, stdin. +# CONFIG_DEV_LOWCONSOLE - Use the simple, low-level serial console +# driver (minimul support) # CONFIG_EXAMPLE=ostest CONFIG_DEBUG=n @@ -118,7 +123,9 @@ CONFIG_START_YEAR=2007 CONFIG_START_MONTH=2 CONFIG_START_DAY=21 CONFIG_JULIAN_TIME=n +CONFIG_HAVE_LOWUARTINIT=n CONFIG_DEV_CONSOLE=n +CONFIG_DEV_LOWCONSOLE=n # # The following can be used to disable categories of diff --git a/configs/z80sim/pashello/defconfig b/configs/z80sim/pashello/defconfig index e56c00e2a42..6f2649084aa 100644 --- a/configs/z80sim/pashello/defconfig +++ b/configs/z80sim/pashello/defconfig @@ -103,8 +103,13 @@ CONFIG_HAVE_LIBM=n # CONFIG_JULIAN_TIME - Enables Julian time conversions # CONFIG_START_YEAR, CONFIG_START_MONTH, CONFIG_START_DAY - # Used to initialize the internal time logic. +# CONFIG_HAVE_LOWUARTINIT - Provides low-level UART initialization +# logic as up_lowuartinit (only needed if there is no +# serial driver). # CONFIG_DEV_CONSOLE - Set if architecture-specific logic # provides /dev/console. Enables stdout, stderr, stdin. +# CONFIG_DEV_LOWCONSOLE - Use the simple, low-level serial console +# driver (minimul support) # CONFIG_EXAMPLE=pashello CONFIG_DEBUG=n @@ -119,7 +124,9 @@ CONFIG_START_MONTH=2 CONFIG_START_DAY=21 CONFIG_JULIAN_TIME=n CONFIG_DEV_CONSOLE=y +CONFIG_HAVE_LOWUARTINIT=n CONFIG_DEV_LOWCONSOLE=y +CONFIG_DEV_LOWCONSOLE=n # # The following can be used to disable categories of diff --git a/configs/z80sim/src/z80_lowputc.c b/configs/z80sim/src/z80_lowputc.c index 4996272f952..269d37f92b6 100644 --- a/configs/z80sim/src/z80_lowputc.c +++ b/configs/z80sim/src/z80_lowputc.c @@ -69,13 +69,13 @@ ********************************************************************************/ /******************************************************************************** - * Name: up_lowputc + * Name: z80_lowputc * * Data sent to port 0xbe are echoed on stdout by the simulation * ********************************************************************************/ -void up_lowputc(char ch) __naked +void z80_lowputc(char ch) __naked { _asm ld hl, #2 @@ -87,13 +87,13 @@ void up_lowputc(char ch) __naked } /******************************************************************************** - * Name: up_lowgetc + * Name: z80_lowgetc * * Data from stdin can be received on port 0xbe in the simulation * ********************************************************************************/ -char up_lowgetc(void) __naked +char z80_lowgetc(void) __naked { _asm in a, (0xbe) diff --git a/configs/z80sim/src/z80_serial.c b/configs/z80sim/src/z80_serial.c index 42b0eecc14e..974b51b8fd8 100644 --- a/configs/z80sim/src/z80_serial.c +++ b/configs/z80sim/src/z80_serial.c @@ -227,7 +227,7 @@ static int up_ioctl(struct file *filep, int cmd, unsigned long arg) static int up_receive(struct uart_dev_s *dev, uint32 *status) { - uint8 ch = up_lowgetc(); + uint8 ch = z80_getputc(); *status = 0; return ch; } @@ -267,7 +267,7 @@ static boolean up_rxavailable(struct uart_dev_s *dev) static void up_send(struct uart_dev_s *dev, int ch) { - up_lowputc(ch); + z80_lowputc(ch); } /**************************************************************************** @@ -358,7 +358,7 @@ void up_serialinit(void) int up_putc(int ch) { - up_lowputc(ch); + z80_lowputc(ch); return 0; } diff --git a/configs/z8encore000zco/ostest/defconfig b/configs/z8encore000zco/ostest/defconfig index 7f864c45660..78b53262266 100644 --- a/configs/z8encore000zco/ostest/defconfig +++ b/configs/z8encore000zco/ostest/defconfig @@ -137,8 +137,13 @@ CONFIG_HAVE_LIBM=n # CONFIG_JULIAN_TIME - Enables Julian time conversions # CONFIG_START_YEAR, CONFIG_START_MONTH, CONFIG_START_DAY - # Used to initialize the internal time logic. +# CONFIG_HAVE_LOWUARTINIT - Provides low-level UART initialization +# logic as up_lowuartinit (only needed if there is no +# serial driver). # CONFIG_DEV_CONSOLE - Set if architecture-specific logic # provides /dev/console. Enables stdout, stderr, stdin. +# CONFIG_DEV_LOWCONSOLE - Use the simple, low-level serial console +# driver (minimul support) # CONFIG_EXAMPLE=ostest CONFIG_DEBUG=y @@ -152,6 +157,7 @@ CONFIG_START_YEAR=2008 CONFIG_START_MONTH=2 CONFIG_START_DAY=17 CONFIG_JULIAN_TIME=n +CONFIG_HAVE_LOWUARTINIT=y CONFIG_DEV_CONSOLE=n CONFIG_DEV_LOWCONSOLE=n