From d979b64adc3774029b67aceabeb64ecec0a1052e Mon Sep 17 00:00:00 2001 From: Bobbi Webber-Manners Date: Sun, 16 Aug 2020 22:59:23 -0400 Subject: [PATCH] EDIT: Added check for 80 cols, 128K. Fixed padding byte for search. --- apps/edit.c | 16 ++++++++++++---- 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/apps/edit.c b/apps/edit.c index c879201..eedb56f 100644 --- a/apps/edit.c +++ b/apps/edit.c @@ -1,4 +1,4 @@ -///////////////////////////////////////////////////////////////////////////// +//////////////////////////////////////////////////////////////////////////// // Simple text editor // Supports Apple //e Auxiliary memory and RamWorks style expansions // Bobbi July-Aug 2020 @@ -1700,6 +1700,7 @@ void do_search_replace(uint8_t r, uint8_t ask) { search: mode = SRCH1; // Searching .. update_status_line(); + set_gapbuf(BUFSZ + 1, '\0'); // NULL term for search_in_gapbuf() if (search_in_gapbuf(gapend + 1, search, &foundpos) == 0) { if (wrapcount > 0) { mode = SEL_NONE; @@ -1734,7 +1735,7 @@ void disconnect_ramdisk(void) { uint16_t *s3d2 = (uint16_t*)0xbf26; // s3d2 driver vector if (*s0d1 == *s3d2) return; // No /RAM connected - for (i = *devcnt; i >= 0; --i) { + for (i = *devcnt; i > 0; --i) { if ((devlst[i] == 0xbf) || (devlst[i] == 0xbb) || (devlst[i] == 0xb7) || (devlst[i] == 0xb3)) break; @@ -2347,8 +2348,15 @@ donehelp: void main(int argc, char *argv[]) { #ifdef AUXMEM - char *pad = (char*)0xbfff; - *pad = '\0'; // Null termination for strstr() + uint8_t *pp = (uint8_t*)0xbf98; + if (!(*pp & 0x02)) { + printf("Need 80 cols"); + return; + } + if ((*pp & 0x30) != 0x30) { + printf("Need 128K"); + return; + } disconnect_ramdisk(); avail_aux_banks(); init_aux_banks();