Kirjoittaja Aihe: LIST-komennosta  (Luettu 6670 kertaa)

Poissa Kuuslankkumies

  • Aktiivinen
  • ***
  • Viestejä: 30
  • Commodore Rulez!
    • Profiili
LIST-komennosta
« : Huhtikuu 15, 2012, 17:08 »
Eli siis, jos teen ohjelman BASICilla ja haluan julkaista sen, mutta en halua ohjelman käyttäjien lueskelevan miten ohjelma on tehty, niin miten saan sen niin, että LIST-komento ei näytä koodia? Esim. joissakin indie-peleissä kun tekee list komennon niin ruutuun tulee vain jotakin tyyliin "10 SYS 20660" tjsp.
Kunniaa Commodorelle

Poissa Jarskimo

  • Vuoden Foorumilainen 2012
  • Metusalem
  • ******
  • Viestejä: 239
    • Profiili
Vs: LIST-komennosta
« Vastaus #1 : Huhtikuu 15, 2012, 17:39 »
Itse en osaa sanoa tähän oikein mitään. Mutta tiettääkseni BASIC ohjelmissa tuota ei saa pois näkyvistä. Ja tuo "10 SYS 20660" tarkoittaa varmaan sitä, että peli on koodattu jollain konekielellä, eikä BASICillä

Poissa Kuuslankkumies

  • Aktiivinen
  • ***
  • Viestejä: 30
  • Commodore Rulez!
    • Profiili
Vs: LIST-komennosta
« Vastaus #2 : Huhtikuu 15, 2012, 19:40 »
Aa ok, aattelin vaan että jotenkin saisi tuon BASIC-ohjelman laitettua konekieliseksi aliohjelmaksi tai jotain?
Kunniaa Commodorelle

Poissa virgo

  • Vuoden Foorumilainen 2014
  • Metusalem
  • ******
  • Viestejä: 1046
  • Retroilija henkeen ja vereen
    • Profiili
    • Genetic point web
Vs: LIST-komennosta
« Vastaus #3 : Huhtikuu 15, 2012, 20:52 »
periaatteessa Basic ohjelma voi sijaita muualakin kuin $0801 osoitteessa
tämä vaatii kuitenkin muutamien nollasivun osoiteiden nybläämistä
ja tallentaminen hankaloituu ;( ja muutenkin vaikea aloittelijalle toteuttaa

on olemassa yksi konsti jolla saa list komennon suorittamaan basic käskyjä listauksessa
tämä on siitä näppärä jekku ettei sitä voi kiertää ja se on aina toiminnassa
poistaminenkin onnistuu vain jos tietää millä rivillä jekku on ja poistaa kyseisen rivin
valitettavasti ei nyt voi neuvoa miten se tapahtuu koska siihen vaadittaisiin aito C64 kone
emullakin toki jekku onnistuu mutta näppis sijoittelu vaikeuttaa asiaa erikois näppäinten muodossa
suomeksi niitä on vaikea löytää ja vielä vaikeampi kirjoittaa normaaliin textiin
mutta huomenna kun pääsen alkuperäisen raudan ääreen voin tehdä ruutu kaappauksen ja selittää tarkemmin miten
systeemi toimii ;)
 
Genetic-point Amiga BBS: g-point.tunk.org ports 500 & 1024
Genetic-PET C64 BBS:g-pet.tunk.org port 1025
or g-point.tunk.org port 1025

Poissa Kuuslankkumies

  • Aktiivinen
  • ***
  • Viestejä: 30
  • Commodore Rulez!
    • Profiili
Vs: LIST-komennosta
« Vastaus #4 : Huhtikuu 15, 2012, 21:37 »
Odotan innolla. Aitoa kuusnepaa käytänkin, joten tuo jekku tulee olemaan varmasti käyttökelpoinen.
Kunniaa Commodorelle

Poissa rams

  • Höperehtijä
  • ****
  • Viestejä: 87
  • Commodore Rulez!
    • Profiili
Vs: LIST-komennosta
« Vastaus #5 : Huhtikuu 15, 2012, 23:27 »
periaatteessa Basic ohjelma voi sijaita muualakin kuin $0801 osoitteessa
tämä vaatii kuitenkin muutamien nollasivun osoiteiden nybläämistä
ja tallentaminen hankaloituu ;( ja muutenkin vaikea aloittelijalle toteuttaa

No mähän en tästä mitään tiedä, mutta eikö kyseessä kuitenkin vain ole Basic:n alkuosoitteen muutos ja Basic koodin tallentaminen ",8,1":llä? Tai jotain muuta sinne päin.

Poissa virgo

  • Vuoden Foorumilainen 2014
  • Metusalem
  • ******
  • Viestejä: 1046
  • Retroilija henkeen ja vereen
    • Profiili
    • Genetic point web
Vs: LIST-komennosta
« Vastaus #6 : Huhtikuu 16, 2012, 08:32 »
ok yritän tässä nyt muistella miten homma tehtiin... tuo basicin siirtäminen meinaan
ensin pitää kirjoittaa basic ohjelma jonka meinaa salata
tämän jälkeen pitää kirjoittaa konekieli ohjelma joka muokkaa
basicin alkuosoitteita ja loppu osoitetta
tämän jälkeen ladataan konekielimonitorilla basic oikeaan osoitteeseen muistiin
kun tiedetään kuinka pitkälle basic ylttää mujistissa voidaan monitorilla korjata basic loppuosoitteen
paikalleen
tämän jälkeen tallennetaan ohjelma $0801-xxxx
basicin loppu osoitteeseen asti

homma ei onnistu ilman konekieli monitoria :(

mutta hei... tuli juurikin mieleen yksi toinen ja melkein parempikin konsti
omistan Basic kääntäjän joka ruuvaa ohjelmasta konekielisen version
ja siitä jää jäljelle vain tuo sys xxxx ja ohjelmakoodia ei sen jälkeen pystys basic koodina näkemään ;)
niin ja nopeus tietenkin tietyissä operaatioissa nopeutuu samalla melko huomattavasti....
Genetic-point Amiga BBS: g-point.tunk.org ports 500 & 1024
Genetic-PET C64 BBS:g-pet.tunk.org port 1025
or g-point.tunk.org port 1025

Poissa Jake64

  • Metusalem
  • *****
  • Viestejä: 141
  • Commodore Rulee!
    • Profiili
Vs: LIST-komennosta
« Vastaus #7 : Huhtikuu 16, 2012, 10:34 »
Itsekkin aikoinani käänsin erään basic-kielisen ohjelman petspeedillä konekieliseksi. Ainut tarve oli nopeuttaa ohjelman suoritusta, kysessä kun oli eräs arkistointiohjelma, jolla sai laitettua pelit ylös ja sitten haettua sieltä, kun halus jotain peliä pelata sadan disketin joukosta.

Pitää vain huomioida, etää kaikki kääntäjät eivät huoli kaikkia käskyjä, mutta kokeilemallahan se selviää toimiiko ohjelma. Ohjelmassa ei myöskään saa olla virheitä, kääntäjä yleensä kaatuu siihen. 

Poissa virgo

  • Vuoden Foorumilainen 2014
  • Metusalem
  • ******
  • Viestejä: 1046
  • Retroilija henkeen ja vereen
    • Profiili
    • Genetic point web
Vs: LIST-komennosta
« Vastaus #8 : Huhtikuu 16, 2012, 12:47 »
pitääkö järjestää kisa kumman kääntäjä on tehokkaampi :p

Commodore tapahtumassa vois kehitellä jotain kisaa tietyn näköisten basic ruutiinien
nopeus enkaksi kuka tekee tehokaimman rutiinin basicilla xD
Genetic-point Amiga BBS: g-point.tunk.org ports 500 & 1024
Genetic-PET C64 BBS:g-pet.tunk.org port 1025
or g-point.tunk.org port 1025

Poissa Kuuslankkumies

  • Aktiivinen
  • ***
  • Viestejä: 30
  • Commodore Rulez!
    • Profiili
Vs: LIST-komennosta
« Vastaus #9 : Huhtikuu 16, 2012, 19:32 »
Kun itseltäni löytyy pelkkä kasettiasema, niin löytyykö mitään kasettiohjelmaa jolla saa tuon basic-ohjelmakoodin näkymättömiin?
Kunniaa Commodorelle

Poissa Jake64

  • Metusalem
  • *****
  • Viestejä: 141
  • Commodore Rulee!
    • Profiili
Vs: LIST-komennosta
« Vastaus #10 : Huhtikuu 16, 2012, 19:37 »
pitääkö järjestää kisa kumman kääntäjä on tehokkaampi :p

Ei ainakaan tolla petspeedilla kannatta nopeuskilpailuja kokeilla muihin verrattuna. Esitteessä sanottiin 40x nopeus basiciin verrattuna, mutta lieneekö totta.

Äsken yritin käännellä tuota arkistointiohjelmaa muilla kääntäjillä, nin eipä nuo kääntyneetkään. Johtunee siitä, että ohjelma lataa konekielisen levyhakenistorutiinin 828- eteenpäin. Samoin saattaa olla, että kaikilla muuttujilla ei ole aloitusarvoja, kun basicissa ne oletuksena on nollia tai merkkijonoilla tyhjiä.

Poissa Jake64

  • Metusalem
  • *****
  • Viestejä: 141
  • Commodore Rulee!
    • Profiili
Vs: LIST-komennosta
« Vastaus #11 : Huhtikuu 16, 2012, 20:10 »
Kun itseltäni löytyy pelkkä kasettiasema, niin löytyykö mitään kasettiohjelmaa jolla saa tuon basic-ohjelmakoodin näkymättömiin?


Tuossapa eräs sivusto, joka osui silmään:
http://www.atarimagazines.com/compute/issue38/087_1_COMMODORE_REM_REVEALED.php

REM lauseeseen kun laittaa esim
10 REM shift+L
niin tulee syntax error listatessa

parempi vielä, kun laittaa
10 REM "tttttttt"shift+L         tttttttt on käänteisiä  pikku t-kirjaimia ja shift+L grafiikamerkki shiftattu-L

tällöin rivinumerokin jää näkyvistä pois ja listatessa tulee syntax error tuon rivin kohdalla. Tuolle rivinumerolle kannattaisi laitella ennen remiä jotain toimintoja, eli jos poistaa tuon rivin, niin eipä suoritus aivan ole oikeanmukainbn. tällöin täytyy noita käänteisiä t-merkkejä lisätä tarpeen mukaan.
Näitä rem-lauseita sitten pitkin ohjelmaa, nini onpahan ainakin selvittäjällä iso homma ratkaista ohjelman juoni.

Pitää  vain muistaa jättää itselle kopio, missä ei ole noita rem lauseita.  On muuten hankala korjata ohjelmaa noitten lisäyksien jälkeen
« Viimeksi muokattu: Huhtikuu 16, 2012, 20:13 kirjoittanut Jake64 »

Poissa virgo

  • Vuoden Foorumilainen 2014
  • Metusalem
  • ******
  • Viestejä: 1046
  • Retroilija henkeen ja vereen
    • Profiili
    • Genetic point web
Vs: LIST-komennosta
« Vastaus #12 : Huhtikuu 16, 2012, 22:33 »
jake jo ehtikin näköjään kertoilla miten hommeli toimii ;-)

itse jumiuduin leikkimään cameleonilla sori...

Genetic-point Amiga BBS: g-point.tunk.org ports 500 & 1024
Genetic-PET C64 BBS:g-pet.tunk.org port 1025
or g-point.tunk.org port 1025

Poissa Jake64

  • Metusalem
  • *****
  • Viestejä: 141
  • Commodore Rulee!
    • Profiili
Vs: LIST-komennosta
« Vastaus #13 : Huhtikuu 17, 2012, 02:36 »
itse jumiuduin leikkimään cameleonilla sori...

Laitteleppa testituloksia ja kokemuksia laitteesta. Ehkäpä laitan sitten tilauslistalle jossain vaiheessa, vaikka mielellään odottelen tuon beta-version jälkeistä laitetta...

Poissa Kuuslankkumies

  • Aktiivinen
  • ***
  • Viestejä: 30
  • Commodore Rulez!
    • Profiili
Vs: LIST-komennosta
« Vastaus #14 : Huhtikuu 17, 2012, 07:40 »
Kun itseltäni löytyy pelkkä kasettiasema, niin löytyykö mitään kasettiohjelmaa jolla saa tuon basic-ohjelmakoodin näkymättömiin?


Tuossapa eräs sivusto, joka osui silmään:
http://www.atarimagazines.com/compute/issue38/087_1_COMMODORE_REM_REVEALED.php

REM lauseeseen kun laittaa esim
10 REM shift+L
niin tulee syntax error listatessa

parempi vielä, kun laittaa
10 REM "tttttttt"shift+L         tttttttt on käänteisiä  pikku t-kirjaimia ja shift+L grafiikamerkki shiftattu-L

tällöin rivinumerokin jää näkyvistä pois ja listatessa tulee syntax error tuon rivin kohdalla. Tuolle rivinumerolle kannattaisi laitella ennen remiä jotain toimintoja, eli jos poistaa tuon rivin, niin eipä suoritus aivan ole oikeanmukainbn. tällöin täytyy noita käänteisiä t-merkkejä lisätä tarpeen mukaan.
Näitä rem-lauseita sitten pitkin ohjelmaa, nini onpahan ainakin selvittäjällä iso homma ratkaista ohjelman juoni.

Pitää  vain muistaa jättää itselle kopio, missä ei ole noita rem lauseita.  On muuten hankala korjata ohjelmaa noitten lisäyksien jälkeen

Joo, kiitos tästä! Pitää sitten vaan laitella noita REMeja ohjelmaan.
Kunniaa Commodorelle