Jeszcze trochę o klawiszu CR.
Chcemy, aby po naciśnięciu klawisza CR (czy entera, jak kto woli) można było powrócić do edycji obszarów za nim (dajmy ostatni znak w linii znajduje się w kolumnie 10, chcemy później edytować kolumny 11-32 (puste), a może i kolejne linie). Rozwiązania są dwa:
-wstawiamy kod 13 i za nim od razu wpisujemy tekst, a przy próbie wyedytowania zostają wstawiane znaki w środku pamięci (między początkowym kawałkiem tekstu, a resztą do końca dokumentu) i ten drugi obszar jest przesuwany z każdym wstawionym znakiem. Rozwiązanie niemożliwe raczej w basicu, bo przesuwanie dłuższych dokumentów będzie trwało wieki.
-wstawiamy spacje do pamięci tak, żeby to, co mamy w pamięci zgadzało się z tym na ekranie. Rozwiązanie lepsze od poprzedniego, ale kiedy znajdziemy się w nowej linii, zaczniemy ją edytować także na ekranie, a nawet jeśli tak będzie, to dokument będzie zawierał niepotrzebne spacje, jeśli nie będziemy edytować.
Jak widać, ani jedno rozwiązanie nie jest dobre ani drugie. W związku z tym, czy ktoś poratowałby jakąś prostą procedurką ASM do sposobu pierwszego (niestety, ja znam tylko juniorowy basic, a asm tylko C64, ten Z-80 to jakaś czarna magia)? A może drugi sposób mimo wszystko jest lepszy?
Pozdrowienia dla wszystkich.
Aha, taka jedna rzecz: niech nikt mi (nam
) nie mówi, że pisanie tego nie ma sensu, że nikt nie będzie używał itp, itd, my to robimy dla satysfakcji, nikogo do używania nie zmuszamy.
No i sprawa druga, jakby ktoś nie wiedział: Junior w jednym z trybów jest kompatybilny z ZX