Aktualności: C64 Power - online od stycznia 2000 !

Autor Wątek: Loader, turboloader itp.  (Przeczytany 493 razy)

0 użytkowników i 1 Gość przegląda ten wątek.

Gizmoń

  • Gość
Loader, turboloader itp.
« dnia: 25 Marca 2008, 19:10 »
 Witam.    
  Mam  takie  pytanie:  jak  za  pomocą  programu  na  C64  wywołać  procedurę  ładowania  programu  z  dysku?  Gdy  wpisuję  takie  coś  (wczyta  program  TEST  po  naciśnięciu  jakiegoś  klawisza):  
   
  10  GET  A$:  IF  A$=\'\'  THEN  10  
  20  LOAD  \'TEST\',8  
   
  Poprawnie  wczytuje  tylko  krótkie  programy  (do  około  20  linii).  W  dłuższych  pojawiają  się  błędy,  zmieniana  jest  treść  linii,  dodawane  są  linie,  których  nie  widać,  ale  powodują  błędy,  np.:  
   
  RUN  
   
  SYNTAX  ERROR  IN  57874  
  READY  
   
  LIST  57874  
   
  READY  
   
  Jak  spowodować,  by  programy  mogły  się  wzajemnie  wczytywać  i  działać?  Komenda  
  LOAD  \'nazwa\',8,1  też  nie  działa,  te  same  objawy.  Dotyczy  to  również  magnetofonu.  A  przecież  jakoś  to  się  dzieje  w  grach  itp.  
   
  Drugim  pytaniem  jest  nie  tyle  działanie  turboloadera  (sama  nazwa  mówi  o  co  chodzi)  a  listing  tego  programu.  Mam  kilka  takich  programów,  każdy  zabezpieczony  poleceniem  SYSxxxx.  A  ciekawie  byłoby  zobaczyć  i  polepszyć  taki  program,  nie  tylko  w  celach  edukacyjnych    \'\'  .  Gdzie  go  zdobyć?    
  PS.  Wiem,  że  Gógle    \'\'  są  dobrym  sposobem,  ale  nie  na  wszystko    \'\'  



Kekesuw

  • Gość
Loader, turboloader itp.
« Odpowiedź #1 dnia: 25 Marca 2008, 22:59 »
 Aby  programy  mogly  sie  wzajemnie  wczytywac  i  dzialac  musisz  uzyc  komendy  OPEN.  Poszukaj  w  necie  o  jej  ogromnych  plusach.  Kiedys  robilem  program  w  oparciu  o  odczyt  danych  zapisanych  w  drugim  pliku.  Choc  juz  troche  lat  minelo  i  nie  powiem  ci  dokladnie  jak  tej  komendy  uzyc  :/  bylo  cos  takiego  jak  OPEN  1,8,15  itp.

Kekesuw

  • Gość
Loader, turboloader itp.
« Odpowiedź #2 dnia: 25 Marca 2008, 23:01 »
 Programy  typu  turboloader  jest  pisany  ASEMBLEREM  musisz  uzyc  programow  typu  monitor  czy  action  replay.  I  musisz  znac  sie  na  asemblerku  :)  

Offline Kisiel

  • Level 7
  • *******
  • Wiadomości: 11447
  • Number 7 in all users competition...
    • http://wiki.projekt64.filety.pl/doku.php
Loader, turboloader itp.
« Odpowiedź #3 dnia: 26 Marca 2008, 09:29 »
 no  i  żródła  takich  czy  innych  turbo  loaderów  są  na  stronach  http://codebase64.org/\' target=_blank>http://codebase64.org/ na  początek  wystarczy.  Chociaż  ja  lubie  bardziej  irq  loadery  mr.wegi.    
  ewentualnie  podmiana  romu  na  taki  z  turboloaderem  (ex-rom  bodaj  sie  nazywa)  
idz wyprostowany wśród tych co idą na kolanach

...w przypadku checi zakupu UK1541,GA,MA,T8500,T7501 prosze o kontakt na Facebooku, haslo: UK1541....

Gizmoń

  • Gość
Loader, turboloader itp.
« Odpowiedź #4 dnia: 04 Kwietnia 2008, 10:07 »
 No  to  w  takim  razie  turboloader  zostawię  sobie  na  potem.  Ale  co  z  tym  ładowaniem  programu?  Szukałem,  szukałem  i  znalazłem  -  spis  komend  stacji  po  raz  enty,  podręcznik,  temat  na  jakimś  forum  \'jak  sformatować  dyskietkę\'  itp.  No  i  oczywiście  LOAD  \'name\',8.  
   
  Z  dyskietki  demo  C64  wczytałem  program  DEMO.BOOT  i  udało  mi  się  go  podpatrzeć  komendą  LIST.  Wypisuje  on  na  ekranie  polecenie:  
  NEW  
  LOAD  \'nazwa\',8  
  i  \'naciska\'  return.  
  Oprócz  tego  wpisuje  mnóstwo  liczb  do  różnych  komórek  w  pamięci,  i  wczytuje  w  ten  sposób  3  programy  naraz...  A  ja  chcieć  jeden!  \'\'    

Offline KB777

  • Level 6
  • ******
  • Wiadomości: 2430
  • -profil nieaktywny-
Loader, turboloader itp.
« Odpowiedź #5 dnia: 04 Kwietnia 2008, 12:29 »
 Gizmoń,  nie  bój  żaby  ;)  
   
  Te  \'demo.boot\'  o  którym  piszesz,  to  całkiem  sprytna  bestia  :)  
  Powinno  dać  się  przerobić  na  ładowanie  tylko  jednego  pliku.  
   
  Rzuć  okiem  na  mapę  pamięci  C64:  
  http://www.ludd.luth.se/~watchman/fairlight/c64/c64-memo.html\' target=_blank>http://www.ludd.luth.se/~watchman/fairlight/c64/c64-memo.html
  oraz  
  http://www.ludd.luth.se/~watchman/fairlight/c64/c64-ram.html\' target=_blank>http://www.ludd.luth.se/~watchman/fairlight/c64/c64-ram.html
   
  50  POKE198,10    
  ^^^^  każemy  C64  myśleć,  że  ma  10  znaków  w  buforze  klawiatury  (=  tak  jakbyśmy  wklepali  te  10  znaków  z  klawiatury)  
   
  55  DATA...  
  60  FORI=1TO10:....  
  ^^^^  dane  z  linii  55  (te  po  DATA)  w  linii  60  są  przepisywane  do  komórek  631...640  -  a  tam  właśnie  jest  bufor  klawiatury  (sprawdź  w  mapie  pamięci)  
   
  Linia  70:  
  pierwsze  POKE  przestawia  początek  BASICa  na  $0818  (2072)  -  normalnie  jest  $0801  (czyli  2049);  drugie  POKE  wpisuje  0  pod  adres  $1800  i  prawdę  mówiąc,  nie  wiem  po  co  (może  potrzebne  tym  programom  które  są  ładowane  przez  demo  -  nie  sprawdzałem).  
   
  Co  wpisane  jest  do  bufora  klawiatury  ?  
  Polecam  tą  stronę:  http://en.wikipedia.org/wiki/PETSCII\' target=_blank>http://en.wikipedia.org/wiki/PETSCII
   
  19  ->  HOME  
  5  x  13  ->  5  razy  CR  (czyli  klawisz  return)  
  82,85,78    ->  RUN  
  13  i  znowu  klawisz  return  
   
  Życzę  powodzenia  w  dalszym  przerabianiu  demo.boot  :)
-profil nieaktywny-

Gizmoń

  • Gość
Loader, turboloader itp.
« Odpowiedź #6 dnia: 12 Kwietnia 2008, 15:43 »
 Szkoda,  że  ta  strona  jest  już  nieaktywna    \'\'  

Offline KB777

  • Level 6
  • ******
  • Wiadomości: 2430
  • -profil nieaktywny-
Loader, turboloader itp.
« Odpowiedź #7 dnia: 14 Kwietnia 2008, 10:37 »
 O...  zamknęli.  Ale  Google  jeszcze  ma  kopię    w  cache`u  ;)  
   
  Zresztą  map  pamięci  C64  jest  na  sieci  więcej.  Np.:  
  http://www.devili.iki.fi/Computers/Commodore/C64/Programmers_Reference/Chapter_5/page_311.html\' target=_blank>http://www.devili.iki.fi/Computers/Commodore/C64/Programmers_Reference/Chapter_5/page_311.html
-profil nieaktywny-