Autor Wątek: FDD3000 v0.2  (Przeczytany 20937 razy)

Pyza^Illusion

  • *****
  • Wiadomości: 563
  • Miejsce pobytu:
    Lubań, dolnośląskie
Odp: FDD3000 v0.2
« Odpowiedź #45 dnia: 2019.10.29, 23:45:04 »
@steev
Co do TOMATO, to poczytałem trochę i nawet chciałem spróbować, ale mi wyskoczył z brakiem jakiegoś .dll'a. Po wczytaniu się dalej stwierdziłem, że szybciej przekopiuję pliki na realnym sprzęcie i ponownie zgram dyskietkę do .dsk, niż poprzerzucam "z palca" te wszystkie pliki pomiędzy obrazami .dsk.
Podobne możliwości ma Yarkowy (DOS'owy) QTRANS... Chyba nie do końca o to mi chodziło :)

edit: swoją drogą... przy przegrywaniu plików na dysk PC, ten TOMATO pozostawia automatycznie jakoś nagłówki, aby przy ponownym wrzuceniu na "dyskietkę" pozostały adresy itp. ?? Czy trzeba sobie zapisywać na kartce i potem odtwarzać? :)

@trojacek
Faktycznie działa. Choć ten przypadek "ogólny" kopiuje plik na tej samej dyskietce zmieniając nazwę. Przydatność dyskusyjna, ale tu pewnie chodzi o to, że MOVE nie wymaga + czy ?.

SCADM - o ile poczytałem/wywnioskowałem - posiada obsługę plików .dsk, ale chyba nie obsługuje dyskietek TOS, tylko format DOS z +3.
ZX Spectrum+ (128kB by STAVI), FDD3000, TI-OF-TTL/ZXVGS, Masterface2b, MacFace II, DivIDE plus, Just Speccy 128...

Phonex

  • *****
  • Wiadomości: 1204
  • Miejsce pobytu:
    Warszawa
Odp: FDD3000 v0.2
« Odpowiedź #46 dnia: 2019.10.29, 23:54:14 »

Nie do końca tak jest. To powinno też działać:

MOVE *"dmconfig.bas" TO ":nazwa_dysku_b:dmconfig.bas"

Podawanie całej ścieżki oczywiście działa. Ale jeżeli jako target podaje się tylko ":nazwa_dysku_b", tak jak w przytoczonym przypadku, to z lewej musi być + lub ?
Poza tym "z plusem" jest mniej pisania :)

trojacek

  • *****
  • Wiadomości: 6114
  • Miejsce pobytu:
    Warszawa
Odp: FDD3000 v0.2
« Odpowiedź #47 dnia: 2019.10.30, 00:18:44 »
Podawanie całej ścieżki oczywiście działa.

Oczywiście.
Chciałem sprostować to, co napisałeś wcześniej (tu - poniżej), bo uważałem, że wprowadzasz w błąd:

MOVE kopiuje pliki tylko "z plusem". W nazwie musi być + albo ?
MOVE "bez plusa" służy do kopiowania katalogów.

2x NIE. Używanie "wildcards" (+, ?) oznacza jedynie, że jako źródło może (choć nie musi) występować większa liczba obiektów i w związku z tym po TO nie może wystąpić nazwa pliku.


Faktycznie działa. Choć ten przypadek "ogólny" kopiuje plik na tej samej dyskietce zmieniając nazwę. Przydatność dyskusyjna,

Hmm...
MOVE *"moj_plik.txt" TO "moj_plik.bak"To tylko jeden z przykładów.

Cytuj
ale tu pewnie chodzi o to, że MOVE nie wymaga + czy ?.

Dokładnie.
Ogólna zasada jest dość logiczna - ile elementów wybierze się wyrażeniem pomiędzy MOVE * a TO wpływa na konstrukcję wyrażenia po TO.

MOVE * jeden_plik TO jeden_plik
MOVE * jeden_plik TO ścieżka:jeden_plik

MOVE * wiele_plików TO ścieżka
MOVE * jeden_katalog TO ścieżka (ten casus muszę jeszcze sprawdzić)

Lewy argument może być też oczywiście poprzedzony ścieżką (:etykietą dysku, nazwą katalogu, łańcuchem katalogów - w dowolnej kombinacji).

Inny przypadek to kopiowanie do CH_A i CH_B, ale to raczej mało interesujące zagadnienie.
« Ostatnia zmiana: 2019.10.30, 00:39:01 wysłana przez trojacek »

steev

  • *****
  • Wiadomości: 1181
  • Miejsce pobytu:
    inode 42
Odp: FDD3000 v0.2
« Odpowiedź #48 dnia: 2019.10.30, 00:28:58 »
@steev
Co do TOMATO, to poczytałem trochę i nawet chciałem spróbować, ale mi wyskoczył z brakiem jakiegoś .dll'a.
Eh? Nie powinien. Czego konkretnie mu brakuje?

edit: swoją drogą... przy przegrywaniu plików na dysk PC, ten TOMATO pozostawia automatycznie jakoś nagłówki, aby przy ponownym wrzuceniu na "dyskietkę" pozostały adresy itp. ?? Czy trzeba sobie zapisywać na kartce i potem odtwarzać? :)
Możesz wyeksportować dyskietkę z zachowaniem nagłówków plików (żeby np. zbudować z nich nowe obrazy) albo bez nich (jeśli potrzebujesz po prostu treści pliku)
Machines should work. People should think.

steev

  • *****
  • Wiadomości: 1181
  • Miejsce pobytu:
    inode 42
Odp: FDD3000 v0.2
« Odpowiedź #49 dnia: 2019.10.30, 09:24:54 »
Eh? Nie powinien. Czego konkretnie mu brakuje?
Brakuje mu skompilowania jako 'static' :/
Ta wersja powinna działać bez marudzenia.
Machines should work. People should think.

buzzugreg

  • *
  • Wiadomości: 34
  • Miejsce pobytu:
    Lublin / Świdnik
Odp: FDD3000 v0.2
« Odpowiedź #50 dnia: 2021.08.15, 20:29:33 »
Witajcie,

podszedłem do tematu migracji zawartości dyskietek 3' do obrazów DSK w celu:

1. używania emulatora Steev'a FDD3000
2. przeniesienia plików do PC w celu ich edycji

Do przeniesienia użyłem:

 Stacja FD-1 + Greaseweazle (FW: v0.21) + HxC Floppy Emulator v2.5.6.6
 
Do wyodrębnienia pojedyńczych plików użyłem:

 tomato-win v0.1.2
 
Pytanie:

Przemigrowane pliki tekstowe (.asm, .bas) wyświetlane
już na PC w edytorze tekstowym zawierają nadmiarowe dane
binarne (krzaki). Tu przykłady z obrazów bajtka dla pliku asm:

ŞŻ‚    ORG   25217
Ś LOAD   CALL   DR_ON
Č    LD   (#2150),HL
Ň    DI
Ü    EX   DE,HL
,   CALL   PRZEP
6   LD   HL,#0000
@   LD   (#214E),HL
J   LD   A,#03
T   LD   (#2102),A
h   CALL   #0CC1
r   LD   HL,(#2147)
|   AND   A
†   JR   NZ,ERROR
   CALL   #0603
š   EX   DE,HL
¤   RET
®ERROR   LD   IY,#5C3A
¸   LD   HL,#210D

a tu dla bas:

 ę********************
  ę*   KONFIGURACJA   *
  ę*  DISK  MANAGERA  *
 ( ę*    ver.1.00 E    *
 2 ę********************
 <> Úç:çç:Ů°"7":ý°"32767":ő"         LOADING...":ď*"dim.bin"Ż:ű
 FM ńBASE=°"60479":úľBASEÉŻ"É"Ĺľ(BASE+Ľ§)ÉŻ"É"Ëő"INCORRECT PROGRAM VERSION!!!":â
 P4 ő"GLOBAL ATTRIBUTES:":í°"1E3":úKÉ°"-1"ËôBASE+°"2",K
 Z5 ű:ő"LOCAL ATTRIBUTES:":í°"1E3":úKÉ°"-1"ËôBASE+°"3",K
 d5 ű:ő"EXTRA ATTRIBUTES:":í°"1E3":úKÉ°"-1"ËôBASE+°"4",K

z moich dyskietek jest podobnie:

Őî
    ORG   62000
    LD   IX,16383
    LD   DE,6912
(    LD   A,255
2    SCF
<    JR   LDBYT
P LDED2   CALL   LDED1
Z    RET   NC
d LDED1   LD   A,4
n LDDELA   DEC   A
x    JR   NZ,LDDELA
‚    ADD   A,A
Ś LDSAMP   INC   B


Nie ma znaczenia czy exportuje opcją -export czy -sexport.
 
O co może chodzić ? Czy tomato dodaje to znaki, czy jest to błąd konwersji ?



PS1.

Obrazy dysków z Bajtka pobrałem z ftp'a speccy.pl
z katalogu Mickiego:

  bajtek1_side_ab.img
  bajtek2_side_ab.img


PS2.
 Steev: czy posiadasz udostepniałeś buldy fuse-fdd3000 i tomcato dla Linux'a ?


steev

  • *****
  • Wiadomości: 1181
  • Miejsce pobytu:
    inode 42
Odp: FDD3000 v0.2
« Odpowiedź #51 dnia: 2021.08.15, 22:37:07 »
Przemigrowane pliki tekstowe (.asm, .bas) wyświetlane
To nie są pliki tekstowe :)
Pliki basicowe są zapisywane w postaci stokenizowanej,
pliki assemblerowe mają dodane z przodu numery wierszy i jakieś dodatkowe kody środowiska.

Nie ma znaczenia czy exportuje opcją -export czy -sexport.
O co może chodzić ? Czy tomato dodaje to znaki, czy jest to błąd konwersji ?
sexport odcina nagłówek TOS (cóż, przynajmniej powinien, tydzień temu poprawiałem kod bo mi nie działało ;) )
Tomato nic nie dodaje, nie jest to błąd konwersji tylko jak wyżej.

Steev: czy posiadasz udostepniałeś buldy fuse-fdd3000 i tomcato dla Linux'a ?
Na SourceForge są źródła (błogosławieństwo i przekleństwo linuksa - każdy jest inny :) )
Dla tomato powinno wystarczyć qmake && make.
Dla Fuse jest to już bardziej skomplikowane, bo najpierw musisz nałożyć patch na Fuse (czyli plus minus wkopiować plik z patchem do folderu ze źródłami Fuse i odpalić, piszę z pamięci, patch -p1 < plik.diff ) a dopiero potem go skompilować (czyli w wersji minimum - ./configure && make)
Machines should work. People should think.

steev

  • *****
  • Wiadomości: 1181
  • Miejsce pobytu:
    inode 42
Odp: FDD3000 v0.2
« Odpowiedź #52 dnia: 2021.08.15, 22:46:33 »
Cytuj
a tu dla bas:

 ę********************
  ę*   KONFIGURACJA   *
  ę*  DISK  MANAGERA  *
 ( ę*    ver.1.00 E    *
 2 ę********************
 <> Úç:çç:Ů°"7":ý°"32767":ő"         LOADING...":ď*"dim.bin"Ż:ű
 FM ńBASE=°"60479":úľBASEÉŻ"É"Ĺľ(BASE+Ľ§)ÉŻ"É"Ëő"INCORRECT PROGRAM VERSION!!!":â
 P4 ő"GLOBAL ATTRIBUTES:":í°"1E3":úKÉ°"-1"ËôBASE+°"2",K
 Z5 ű:ő"LOCAL ATTRIBUTES:":í°"1E3":úKÉ°"-1"ËôBASE+°"3",K
 d5 ű:ő"EXTRA ATTRIBUTES:":í°"1E3":úKÉ°"-1"ËôBASE+°"4",K

Got perl? ;)

./listbasic.pl plik.bas > plik.txt
Machines should work. People should think.

buzzugreg

  • *
  • Wiadomości: 34
  • Miejsce pobytu:
    Lublin / Świdnik
Odp: FDD3000 v0.2
« Odpowiedź #53 dnia: 2021.08.16, 12:05:38 »
Steev dzięki za odpowiedź i za naprowadzenie.

Ale... przynajmniej w przypadku plików bas które posiadam po konwersji poleceniem -export, listabasic.pl nie działa. Kończy się komunikatem:

listbasic.pl hi2lo.bas > hi2lo2.bas
Line: 10 : Len: 2560
Dups po wierszu

z różnymi wartościami, w zależności od pliku.

Żeby działał, muszę usunąć pierwsze 7 bajtów z pliku bas i dopiero wtedy użyć listabasic.pl:

 dd if=hi2lo.bas of=hi2loOk.bas bs=1 skip=7

listbasic.pl hi2loOk.bas > hi2lo2Ok.bas
Line: 10 : Len: 29
Line: 12 : Len: 45
Line: 20 : Len: 26
Line: 25 : Len: 97
Line: 28 : Len: 39
Line: 29 : Len: 75
Line: 30 : Len: 13
Line: 40 : Len: 36
Line: 50 : Len: 23
Line: 53 : Len: 125
Line: 55 : Len: 24
Line: 60 : Len: 57
Line: 70 : Len: 70
Line: 80 : Len: 71
Line: 90 : Len: 104
Line: 95 : Len: 10
Line: 100 : Len: 3
Line: 110 : Len: 39
Line: 115 : Len: 2
Line: 120 : Len: 25

i dopiero wtedy tekst jest już cacy:

  10  BORDER 1: PAPER 1: CLS : INK 6
  12  PRINT AT 10,10; FLASH 1;"TRY AND GUESS"
  20  LET a=INT (RND*100)+1
  25  PRINT AT 15,5;"THE NUMBER IS BETWEEN";AT 18,10;"0";" AND ";100: PAUSE 150: CLS
  28  INPUT "HOW MANY ATTEMPTS DO YOU WISH ?  ";c
  29  IF c>17 THEN  CLS : PRINT AT 6,6;"DON'T BE RIDICULOUS!": PAUSE 50: GO TO 10
  30  FOR J=1 TO c
  ...

Popracuję jeszcze nad tematem, chociażby żeby znaleźć multiplatformowe zastępstwo polecenia dd. Do tego posprawdzam więcej źródeł.

PS. Skąd wiem że trzeba usunąć 7 bajtów... ?
      Porównałem pliki .bas po konwersji parametrem -export i -sexport
      Są różne :|

PS2. Dlaczego więc nie przekonwertowałem wszystkiego używając tomato z opcją -sexport ?
       A no niestety, tomato wywala się na tym obrazie dysku gdy użyje parametru -sexport,
       konwertując (na szczęście) 1 plik bas, który posłużył do porównania.
       (z parametrem export konwertuje wszystkie pliki z obrazu)

./tomato-win.exe -open nn-a_scp.dsk -sexport e2

TOs MAnipulation TOol. v0.1.2

C : open
o : Opened file nn-a_scp.dsk
C : sexport
o : File address.bas saved as e2/address.bas
Segmentation fault

Temat pobadam, bo jakoś tak bardziej komfortowo pracuje mi się w vscode  :)
Przeanalizuję pliki ASM - może podobnie da się je przekonwertować.

Pozdrawiam

Greg

steev

  • *****
  • Wiadomości: 1181
  • Miejsce pobytu:
    inode 42
Odp: FDD3000 v0.2
« Odpowiedź #54 dnia: 2021.08.16, 20:30:42 »

PS. Skąd wiem że trzeba usunąć 7 bajtów... ?
      Porównałem pliki .bas po konwersji parametrem -export i -sexport
      Są różne :|
Oczywiście.
Jeden zawiera dodatkowy nagłówek TOS, drugi nie.

C : open
o : Opened file nn-a_scp.dsk
C : sexport
o : File address.bas saved as e2/address.bas
Segmentation fault
Yup.
Wywala się zapewne na pliku o serowej długości.
Poprawkę mam już gotową, ale jeszcze nie wrzuciłem na SF.
Machines should work. People should think.

buzzugreg

  • *
  • Wiadomości: 34
  • Miejsce pobytu:
    Lublin / Świdnik
Odp: FDD3000 v0.2
« Odpowiedź #55 dnia: 2021.08.16, 21:06:23 »
plik address.bas przeszedł (ma 1070 bajtów), po nim jest address.rec - on ma 0 bajtów i tu jest seg fault.