Autor Wątek: sjasmplus (fork)  (Przeczytany 6177 razy)

steev

  • *****
  • Wiadomości: 1362
  • Miejsce pobytu:
    inode 42
sjasmplus (fork)
« dnia: 2017.12.27, 18:22:41 »
https://github.com/mkoloberdin/sjasmplus
Tak rzuciłem okiem na manual (testować będę jutro) i jednej rzeczy nie rozumiem.
Po co assemblerowi tryb stronicowania pamięci?
Chyba że autor planuje rozbudować swoja kopię sjasmplus do kombajnu asm+emulator.
(jeśli tak - trzymam kciuki)
A, zapisuje TAPy (choć zdaje się bez loadera)
Machines should work. People should think.

Dr Piotr

  • ***
  • Wiadomości: 196
Odp: sjasmplus (fork)
« Odpowiedź #1 dnia: 2017.12.27, 21:27:21 »
https://github.com/mkoloberdin/sjasmplus
Tak rzuciłem okiem na manual (testować będę jutro) i jednej rzeczy nie rozumiem.
Po co assemblerowi tryb stronicowania pamięci?
Chyba że autor planuje rozbudować swoja kopię sjasmplus do kombajnu asm+emulator.
(jeśli tak - trzymam kciuki)
A, zapisuje TAPy (choć zdaje się bez loadera)

Nie wszystkie komputery z z80 maja tylko 64kb ramu :)
Dzieki tym komendom mozesz zasemblowac wiekszy program do roznych bankow i np. zgrac je potem jako osobne pliki itp.

steev

  • *****
  • Wiadomości: 1362
  • Miejsce pobytu:
    inode 42
Odp: sjasmplus (fork)
« Odpowiedź #2 dnia: 2017.12.27, 23:32:27 »
Nie wszystkie komputery z z80 maja tylko 64kb ramu :)
Noo.
Np. taki ZX Spectrum 48k ;>

Dzieki tym komendom mozesz zasemblowac wiekszy program do roznych bankow i np. zgrac je potem jako osobne pliki itp.
Ależ ja wiem co przy ich pomocy mogę zrobić.
Tylko nie widzę potrzeby wprowadzania tego - pomijając uruchomienie wbudowanego emulatora tuż po kompilacji.
Widocznie ta wiedza pojawia się w miarę korzystania... :)
Machines should work. People should think.

RafalM

  • *****
  • Wiadomości: 1133
  • Miejsce pobytu:
    Sulejówek
Odp: sjasmplus (fork)
« Odpowiedź #3 dnia: 2017.12.28, 12:31:01 »
Wiesz Steev albo ja czegoś mocno nie rozumiem albo ty czegoś mocno nie rozumiesz ;)

Naprawdę nie widzisz potrzeby pisania programów na Spectrum 128 kB?

Sjasmplus ma kilka opcji kompilacji. Możesz kompilować do plików binarnych, ilu tylko chcesz. Możesz jakośkompilować do .tapa, chociaż nigdy tego nie robiłem. Możesz wreszcie kompilować do snapshota.

Piszesz więc program oznaczając że różne partie kodu trafią do róznych banków pamięci. Kompilujesz. Dostajesz snapshot w trybie 128kB. Wciskasz Alt+Tab. W Windowsie klikasz ten snapshot. Otwiera się w twoim ulubionym emulatorze. Patrzysz czy działa tak jak chciałeś.

Jakbyś wolał to robić? Generować pliki binarne bez wskazywania banku i za każdym razem budować z nich plik .tap z loaderem wczytującym je do właściwych stron pamięci ?




steev

  • *****
  • Wiadomości: 1362
  • Miejsce pobytu:
    inode 42
Odp: sjasmplus (fork)
« Odpowiedź #4 dnia: 2017.12.28, 13:02:52 »
Wiesz Steev albo ja czegoś mocno nie rozumiem albo ty czegoś mocno nie rozumiesz ;)
Both :b

<ciach>
Piszesz więc program oznaczając że różne partie kodu trafią do róznych banków pamięci. Kompilujesz. Dostajesz snapshot w trybie 128kB. Wciskasz Alt+Tab. W Windowsie klikasz ten snapshot. Otwiera się w twoim ulubionym emulatorze. Patrzysz czy działa tak jak chciałeś.
Jakbyś wolał to robić? Generować pliki binarne bez wskazywania banku i za każdym razem budować z nich plik .tap z loaderem wczytującym je do właściwych stron pamięci ?
Mniej więcej.
Weź pod uwagę, że w zasadzie to nigdy nie musiałem pisać większych kawałków pod maszyny z pamięcią > 48k...  :)
Po przegryzieniu się przez doca i skojarzeniu faktu, że kompilator zapisuje snapshota z z fragmentami już poukładanymi odpowiednio w pamięci, wygląda to dużo lepiej, bo nie rozumiem jedynie jednej rzeczy - jak mam kliknąć na ten snapshot pod windą, nie mając na lapku windy... ;)
Machines should work. People should think.

Dalthon

  • ****
  • Wiadomości: 428
  • Miejsce pobytu:
    TriCity
Odp: sjasmplus (fork)
« Odpowiedź #5 dnia: 2018.01.07, 22:53:49 »
Jakbyś wolał to robić? Generować pliki binarne bez wskazywania banku i za każdym razem budować z nich plik .tap z loaderem wczytującym je do właściwych stron pamięci ?
używając pasmo tak to (w przybliżeniu, bo można sobie ułatwić) właśnie wygląda :)
ZX Spectrum +2 Grey | Just Speccy 128 | ZX Spectrum Next | ZX-Uno 2MB |  Murmulator | Amstrad 6128 | MSX2 Philips VG-8235 | Commodore 64 | Commodore +4 | Atari 520 STF | Amiga 1200