Autor Wątek: Pierwsze kroki w Pasmo  (Przeczytany 106278 razy)

matofesi

  • *****
  • Wiadomości: 2048
  • Miejsce pobytu:
    Toruń/Poland
Odp: Pierwsze kroki w Pasmo
« Odpowiedź #15 dnia: 2015.04.14, 12:42:45 »
Coś źle robisz... Ściągnąłeś niewłaściwą/uszkodzoną wersję pasmo... i jeszcze kilka innych przyczyn.

Skopiowałem twój kod i assembluje się bez najmniejszych problemów. Potem żeby nie było, że mam jakąś extra wersję (mam 0.5.3 kompilowane ze źródeł i odpalane pod Linuksem) ściągnąłem binarną wersję 0.5.2 dla windows (http://pasmo.speccy.org/#down a konkretny link: http://pasmo.speccy.org/bin/pasmo-0.5.2.zip), rozpakowałem i odpalam używając Wine - też assembluje bez problemów. Na koniec odpaliłem jeszcze Windows XP w virtualboksie i tam też assembluje bez żadnych problemów.

Coś musi być po twojej stronie.

RafalM

  • *****
  • Wiadomości: 1133
  • Miejsce pobytu:
    Sulejówek
Odp: Pierwsze kroki w Pasmo
« Odpowiedź #16 dnia: 2015.04.14, 12:56:27 »
Strzelam w ślepo ale może jest jakiś problem z tą wersją Pasmo i twoją wersją Windows / komputera

Częsty problem przy różnych programach to maszyna 32-bitowa vs 64-bitowa.

Na Pasmo się nie znam, gdybyś chciał spróbować alternatywy - Sjasm to daj znać :)

tdu

  • *****
  • Wiadomości: 926
  • Miejsce pobytu:
    Gdansk
    • Nasze Wędrowanie
Odp: Pierwsze kroki w Pasmo
« Odpowiedź #17 dnia: 2015.04.14, 15:00:14 »
Pasmo używam pod XP, ale wieczorem spróbuje pod win7.
Pobrałem wersję 052, wersji 053 nie udało się pobrać.

Ważna informacja że u was się kompiluje, będe walczył dalej.
Trochę mnie ten assembler zniechęcił, zamiast uczyć się algorytmów
to męcze się z nim i tracę czas.

@rafalm - chętnie spróbuję na Sjasm, szukałem w internecie ale nie znalazłem
ZX81/ZX 48k/Zx48k+/ZX +2/ZX +2A/+3/TC2048/FDD3000/FDD5000/3"/3,5'/5,25'/Beta 48k Apina/D+/GP50s/DIVIDE CF/Masterface/Polbasic SamCoupe QL CPC6128/N100 MSX-SVI738  MSX2-VG8235

Tygrys

  • Administrator
  • *****
  • Wiadomości: 4537
  • Miejsce pobytu:
    Warszawa
  • mistrz ceremonii
Odp: Pierwsze kroki w Pasmo
« Odpowiedź #18 dnia: 2015.04.14, 15:25:44 »
Pasmo sciągniete z http://pasmo.speccy.org/bin/pasmo-0.5.4.beta2.zip

Zrobiłem copy&paste kodu, który został umieszczony.

Testowane pod W7, 64bit, pasmo jest skomplilowane jako 32bit:

Cytuj
pasmo -d --tapbas p2.asm p2.tap
                ORG C350
C350:210058     LD HL, 5800
C353:3E00       LD A, 00
C355:           label loop1
C355:77         LD (HL), A
C356:23         INC HL
C357:3C         INC A
C358:FE20       CP 20
C35A:C255C3     JP NZ, C355
C35D:C9         RET
C35E:           END C350
Emiting TAP basic loader
Emiting TAP from C350 to C35D

Sprawdzenie zawartości .tap
Cytuj
dirtap.exe p2.tap

ZX Spectrum TAP format analyzer 1.04a (c) 1996 Busy soft
Linux port and safe endian correction (c) 2002 Tritol

File: p2.tap  (length 135 bytes)
  Offset     Len Flg Type Name          Len   Add   Bas
 ------- ------- --- ---- ---------- ------ ----- -----
       0      17   0 prog loader         71    10    71
      21      71 255 body
      96      17   0 code p2.tap         14 50000 32768
     117      14 255 body
 ------- ------- --- ---- ---------- ------ ----- -----
     135     127 End of p2.tap           85 Items:4


tdu

  • *****
  • Wiadomości: 926
  • Miejsce pobytu:
    Gdansk
    • Nasze Wędrowanie
Odp: Pierwsze kroki w Pasmo
« Odpowiedź #19 dnia: 2015.04.14, 15:48:09 »
Pobrałem nową wersję 054 uruchomiłem na tym samym przykładzie
i mam to samo czyli, błąd.

A pracuje na innym komputerze niż rano.
Wieczorem sprawdzę na win7.
ZX81/ZX 48k/Zx48k+/ZX +2/ZX +2A/+3/TC2048/FDD3000/FDD5000/3"/3,5'/5,25'/Beta 48k Apina/D+/GP50s/DIVIDE CF/Masterface/Polbasic SamCoupe QL CPC6128/N100 MSX-SVI738  MSX2-VG8235

steev

  • *****
  • Wiadomości: 1362
  • Miejsce pobytu:
    inode 42
Odp: Pierwsze kroki w Pasmo
« Odpowiedź #20 dnia: 2015.04.14, 17:15:15 »
pasmo 0.5.4.2 pod linuksem - kompiluje się bez problemu.
Natomiast sugerowałbym w dyrektywie END wykorzystać etykietę, a nie adres bezpośredni.
Może to pomoże...

org 50000

start:
ld hl,22528
ld a,0
loop1 ld (hl),a
         inc hl ;zwieksz
         inc a      ;zwieksz
         cp 32      ;porownuje akumulator z liczba 32
         jp nz,loop1   ;jesli flaga zero skasowana wykonaj skok do loop1
         ret

end start
Machines should work. People should think.

Gryzor

  • *****
  • Wiadomości: 2009
  • Miejsce pobytu:
    Warszawa
Odp: Pierwsze kroki w Pasmo
« Odpowiedź #21 dnia: 2015.04.14, 17:25:55 »
A moze zamiast ekranow lepiej zalaczyc plik asm ?

tdu

  • *****
  • Wiadomości: 926
  • Miejsce pobytu:
    Gdansk
    • Nasze Wędrowanie
Odp: Pierwsze kroki w Pasmo
« Odpowiedź #22 dnia: 2015.04.14, 17:49:19 »
@Gryzor - ten plik jest jawny, zobacz post Steeva

No myślę Panowie że sprawa się wyjaśniła.

Używałem notatnika windowsowego i w pewnym momencie zainstalowałem notepad2
bo koloruje składnie i numeruje wiersze i chyba w tym momencie zaczęły się problemy.

Przeszedłem na edytor który normalnie używam do programowania PHP.
Trzeba zrobić ctrl+c, i ctrl+v do nowego pliku, zapisać i zaczęło działać.
Zapisuje jako program w C, daje rozszerzenie asm i jest ok.

Dziękuje wszystkim za zainteresowanie problemem i za pomoc.

Jeszcze muszę sprawdzić czy rzeczywiście w poprzednim notatniku jest dobrze,
czy to tylko notepad2 tak miesza, a może wystarczy go gdzieś przekonfigurować.
No i jeszcze w hexedytorze sprawdze co on tam do pliku dołącza.

 
ZX81/ZX 48k/Zx48k+/ZX +2/ZX +2A/+3/TC2048/FDD3000/FDD5000/3"/3,5'/5,25'/Beta 48k Apina/D+/GP50s/DIVIDE CF/Masterface/Polbasic SamCoupe QL CPC6128/N100 MSX-SVI738  MSX2-VG8235

jpomiar

  • *
  • Wiadomości: 18
Odp: Pierwsze kroki w Pasmo
« Odpowiedź #23 dnia: 2015.04.14, 18:11:41 »
Chyba powinieneś w Notepadzie zaznaczyć zapisywanie w czystym tekście bez windowsowych wodotrysków.

Pozdrawiam
jpomiar

tdu

  • *****
  • Wiadomości: 926
  • Miejsce pobytu:
    Gdansk
    • Nasze Wędrowanie
Odp: Pierwsze kroki w Pasmo
« Odpowiedź #24 dnia: 2015.04.14, 18:36:36 »
Po analizie w hexedytorze okazało się że pasmo wymaga aby każdy koniec wiersza miał CR+LF ew tylko LF,
jeśli będzie to tylko CR to będzie problem taki jak u mnie.

Większość edytorów ma takie opcje, wystarczy odpowiednio ustawić.
W załączniku dwa pliki jeden daje się kompilować, drugi nie.
ZX81/ZX 48k/Zx48k+/ZX +2/ZX +2A/+3/TC2048/FDD3000/FDD5000/3"/3,5'/5,25'/Beta 48k Apina/D+/GP50s/DIVIDE CF/Masterface/Polbasic SamCoupe QL CPC6128/N100 MSX-SVI738  MSX2-VG8235

Tygrys

  • Administrator
  • *****
  • Wiadomości: 4537
  • Miejsce pobytu:
    Warszawa
  • mistrz ceremonii
Odp: Pierwsze kroki w Pasmo
« Odpowiedź #25 dnia: 2015.04.15, 10:11:00 »
Fajnie że udało się prawidłowo skonfigurować edytor.

tdu

  • *****
  • Wiadomości: 926
  • Miejsce pobytu:
    Gdansk
    • Nasze Wędrowanie
Odp: Pierwsze kroki w Pasmo
« Odpowiedź #26 dnia: 2015.04.15, 11:29:42 »
Fajnie działa. Jak na razie naciąłem się na jedną rzecz.
Nie można w etykietach używać słów: LOW i HIGH.
Muszą być do czegoś zastrzeżone.
ZX81/ZX 48k/Zx48k+/ZX +2/ZX +2A/+3/TC2048/FDD3000/FDD5000/3"/3,5'/5,25'/Beta 48k Apina/D+/GP50s/DIVIDE CF/Masterface/Polbasic SamCoupe QL CPC6128/N100 MSX-SVI738  MSX2-VG8235

matofesi

  • *****
  • Wiadomości: 2048
  • Miejsce pobytu:
    Toruń/Poland
Odp: Pierwsze kroki w Pasmo
« Odpowiedź #27 dnia: 2015.04.15, 12:01:20 »
oczywiście, że są zastrzeżone - to są operatory zwracające odpowiednio dolną i górną połówkę dwubajtowej wartości. Sugeruję zacząć od przeczytanie stosownej dokumentacji: http://pasmo.speccy.org/pasmodoc.html ;)

Gryzor

  • *****
  • Wiadomości: 2009
  • Miejsce pobytu:
    Warszawa
Odp: Pierwsze kroki w Pasmo
« Odpowiedź #28 dnia: 2015.04.15, 12:24:56 »
Wlasnie dlatego chodzilo mi o zalaczeniu oryginalnego pliku.
A jako ciekawostka, widzialem kiedys jak "przetestowany" skrypt rozwalil kawal sporego systemu, bo nie uwzglednil lokalizacji OSa. Niestety w informatyce nic nie jest oczywiste, nawet pojecie "to samo" ;-) 

tdu

  • *****
  • Wiadomości: 926
  • Miejsce pobytu:
    Gdansk
    • Nasze Wędrowanie
Odp: Pierwsze kroki w Pasmo
« Odpowiedź #29 dnia: 2015.04.17, 18:23:14 »
Potrzebuję procedurę opóźniającą ok 100ms.
Jako podprogram, do wklejenia w pasmo.

Może mi ktoś na szybko coś wymyśli, bardzo proszę !
ZX81/ZX 48k/Zx48k+/ZX +2/ZX +2A/+3/TC2048/FDD3000/FDD5000/3"/3,5'/5,25'/Beta 48k Apina/D+/GP50s/DIVIDE CF/Masterface/Polbasic SamCoupe QL CPC6128/N100 MSX-SVI738  MSX2-VG8235