Komputery z Z80 > SAM COUPE

Nowy menedżer dyskietek Sama

<< < (32/36) > >>

tdu:
Ja również używam programu, bardzo często, głównie z TOsem,
jest nie do zastąpienia.

Z błędów to wychwyciłem takie sytuacje:

Linia REM komentarz, działa prawidłowo
ale praktycznie to w programie jak chcę wyłączyć z działania jakąś linię to piszę np. REM:PRINT AT....
i tu już wychodzi kaszana, wszystko po REM: jest popaprane.

Druga sprawa kody sterujące np Bright w listingu, w oryginale komputer ich nie wyświetla tylko
rozjaśnia listing, tutaj odwrotnie wyświetla i nie rozjaśnia.
Tworzy to bałagan i jest mylące, już lepiej żeby ich nie wyświetlało, a rozjaśniać nie musi.
(chodzi o kod uzyskiwany przez ext mode + 9)

Miałem też problem z przeniesieniem TAP do obrazu dyskietki, wychodziła jakaś lipa,
dopiero program tap2tos napisany przez Steeva, dał radę.
No ale to było już miesiąc temu i nie jestem w stanie wrócić do kontekstu w którym to wystąpiło.


Sir David:

--- Cytat: tdu w 2023.06.13, 12:33:35 ---Linia REM komentarz, działa prawidłowo
ale praktycznie to w programie jak chcę wyłączyć z działania jakąś linię to piszę np. REM:PRINT AT....
i tu już wychodzi kaszana, wszystko po REM: jest popaprane.

--- Koniec cytatu ---
Niestety, żeby zrobić to tak jak na Spectrum, musiałbym bardzo mocno kombinować i zupełnie inaczej napisać edytor. Prawie jak emulator Spectrum. Według mnie nie warte zachodu. Dlaczego to nie jest proste? Na przykład, jeżeli wyświetlając program zdekoduję rozkazy po REM na tekst, to potem jak je traktować przy zapisie? Z powrotem przerobić na rozkazy? A może tu był tekst pisany po literce? Skąd w momencie zapisu program ma to wiedzieć? Jeszcze gorzej z kodem maszynowym w linii REM. Jakakolwiek zmiana choć jednego bajtu sprawi, że program przestanie działać. Dlatego wymyśliłem sposób przechowywania wszystkich kodów dla znaków spoza ASCII w postaci krzaków z myślą, żeby tego przy edycji nie ruszać, a wtedy zapisze się tak jak było w oryginale. To samo dotyczy następnej sytuacji:

--- Cytuj ---Druga sprawa kody sterujące np Bright w listingu, w oryginale komputer ich nie wyświetla tylko rozjaśnia listing, tutaj odwrotnie wyświetla i nie rozjaśnia.
Tworzy to bałagan i jest mylące, już lepiej żeby ich nie wyświetlało, a rozjaśniać nie musi. (chodzi o kod uzyskiwany przez ext mode + 9)

--- Koniec cytatu ---
Niestety nie mogę zmieniać kolorów w edytorze. Nie mogę też kodów sterujących kolorem nie pokazywać, bo jak pominę, to po zapisie już ich nie będzie. A tak przynajmniej widać, że coś tu jest.
Wpadłem na pomysł pewnego rozwiązania - opcja w menu do wyczyszczenia z listingu wszelkich kodów - krzaków, tak tylko dla oka, dla poprawy widoczności właściwego kodu. Z ostrzeżeniem, że zapisanie takiego pliku sprawi usunięcie ważnych informacji.

--- Cytuj ---Miałem też problem z przeniesieniem TAP do obrazu dyskietki, wychodziła jakaś lipa,
dopiero program tap2tos napisany przez Steeva, dał radę.
No ale to było już miesiąc temu i nie jestem w stanie wrócić do kontekstu w którym to wystąpiło.

--- Koniec cytatu ---
No to szkoda, że nie pamiętasz szczegółów. Ciekaw jestem na czym polegała ta lipa.

Sir David:

--- Cytat: skoti w 2023.06.12, 22:07:41 ---Jest jakiś problem z eksportem do TOS 640kB. Tworzony obraz jest uszkodzony?

--- Koniec cytatu ---
Jeszcze nie sprawdziłem, ale może obraz jest dobry, a SCADM otwierając źle rozpoznaje typ takiej dyskietki (tutaj grzebałem i tak może być) i dlatego pisze, że jest uszkodzona? Przydałoby się sprawdzić, czy taka dyskietka działa np. pod emulatorem.

skoti:
Fuse rzuca błędem Failed to open disk image: Cannot open disk image.

W SCADM w oknie D1 jest to co poszło do eksportu a w D2 wyeksportowany obraz 640kB. Brakuje plików.

Sir David:

--- Cytat: skoti w 2023.06.13, 16:05:34 ---Fuse rzuca błędem Failed to open disk image: Cannot open disk image.

W SCADM w oknie D1 jest to co poszło do eksportu a w D2 wyeksportowany obraz 640kB. Brakuje plików.

--- Koniec cytatu ---

Zlokalizowałem błąd. W wyeksportowanym obrazie dyskietki 640k było w nagłówku 40 ścieżek i 1 strona, tak jak dla dyskietki 160k. Błąd musiał być od początku, bo korzystałem z błędnego obrazu pustej dyskietki, który nie pamiętam skąd miałem (to było 9 lat temu). Wcześniej tego nie zauważyłem, bo do niedawna miałem inny sposób detekcji typu dyskietki - po długości pliku. Dlatego SCADM takie wyeksportowane dyskietki odczytywał dobrze, a w emulatorze nie sprawdzałem. Teraz nie patrzy na długość, a odczytuje parametry i traktuje dyskietkę 640k jako 160k. Poprawiłem. Dzięki za zwrócenie uwagi!
Zanim puszczę nową wersję, są dwa rozwiązania. Obraz 640k w formacie .img jest prawidłowy, bo tam nie ma żadnych parametrów, a czyste dane. A w obrazie .dsk można czymś poprawić 2 bajty: bajt 48 (licząc bajty od 0) zmienić z 40 na 80, a bajt 49 z 1 na 2 i dyskietka zacznie działać.

Nawigacja

[0] Indeks wiadomości

[#] Następna strona

[*] Poprzednia strona

Idź do wersji pełnej