ZX Spectrum > EMULATORY

FDD3000 v0.2

<< < (11/13) > >>

buzzugreg:
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:

--- Cytat: buzzugreg w 2021.08.15, 20:29:33 ---Przemigrowane pliki tekstowe (.asm, .bas) wyświetlane

--- Koniec cytatu ---
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.


--- Cytat: buzzugreg w 2021.08.15, 20:29:33 ---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 ?

--- Koniec cytatu ---
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.


--- Cytat: buzzugreg w 2021.08.15, 20:29:33 --- Steev: czy posiadasz udostepniałeś buldy fuse-fdd3000 i tomcato dla Linux'a ?

--- Koniec cytatu ---
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)

steev:

--- 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

--- Koniec cytatu ---

Got perl? ;)

./listbasic.pl plik.bas > plik.txt

buzzugreg:
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:

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

--- Koniec cytatu ---
Oczywiście.
Jeden zawiera dodatkowy nagłówek TOS, drugi nie.


--- Cytat: buzzugreg w 2021.08.16, 12:05:38 ---C : open
o : Opened file nn-a_scp.dsk
C : sexport
o : File address.bas saved as e2/address.bas
Segmentation fault

--- Koniec cytatu ---
Yup.
Wywala się zapewne na pliku o serowej długości.
Poprawkę mam już gotową, ale jeszcze nie wrzuciłem na SF.

Nawigacja

[0] Indeks wiadomości

[#] Następna strona

[*] Poprzednia strona

Idź do wersji pełnej