Welcome, Guest. Please login or register.


Author Topic: Általános BASIC Kérdések (Read 423848 times)

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: Általános BASIC Kérdések
« Reply #240 on: 2012.March.14. 20:46:50 »
Nem mintha a kérdés nagy szakértõje lennék, de a snapshot-ban elfogyott a memória (F8-al kérj INFO-t). Mindíg amikor elindítod a programot, újabb szegmenst foglalt le, és sokat próbálkoztál vele, anélkül, hogy felszabadítottad volna.
így van, ezért van a Freesegment. A szám azért lett 255-nél nagyobb, mert  felsõbájtban a hibakódot adja vissza, ami alap esetben (ha sikerült a foglalás) 0.

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9898
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Általános BASIC Kérdések
« Reply #241 on: 2012.March.16. 13:41:21 »
Ha minden igaz ez kell bele:
Code: [Select]
  135 CODE LOAD=HEX$("DB,B3,F5,7D,D3,B3,3E,01,11,01,C0,01,27,1E,F7,06,6F,26,00,F1,D3,B3,C9")
  136 CODE SAVE=HEX$("DB,B3,F5,7D,D3,B3,3E,01,11,01,C0,01,27,1E,F7,08,6F,26,00,F1,D3,B3,C9")
Híváskor paraméterben meg kell adni a szegmens számot (WS). Visszatéréskor ha az értéke nagyobb mint 0, akkor hiba volt.

Ezzel akkor hogyan kell magát a betöltést megoldani?
Eredetileg ilyesmi lett volna:

Code: [Select]
  180 FOR I=1 TO 7719
  185   GET #1:A$
  190   SPOKE WS,I,ORD(A$)
  200 NEXT

Ezek közül mely sorok helyett kell azt írni be, hogy CALL USR(LOAD,0)? Próbáltam úgy is, hogy csak a SPOKE helyett írom be, meg úgy is, hogy a GET és a SPOKE helyett írom be, meg úgy is, hoyg az egész helyett írom be, de egyikkel sem akart mûködni. Vagy én szúrtam el valamit.
Ja, és ha I helyett A-t írnék változónak a ciklusban, úgy is mûködne?
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: Általános BASIC Kérdések
« Reply #242 on: 2012.March.16. 14:04:43 »
Ezek közül mely sorok helyett kell azt írni be, hogy CALL USR(LOAD,0)?
Az egész helyett. És LOAD,WS

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9898
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Általános BASIC Kérdések
« Reply #243 on: 2012.March.16. 14:08:46 »
Még egy észrevétel:
Ha kiadom elõbb a POKE 56,201 utasítást, akkor a következõ sorok hatástalanok:

Code: [Select]
170 POKE 56,201
570 IF SPEEK(WS,1317)=8 THEN SET BORDER 6
580 IF SPEEK(WS,1317)=0 THEN SET BORDER 8

Ha nincs ott a 170-es sor, akkor viszont mûködik. Biztos ennek is nyilvánvaló oka van, ami nekem magas. És ha pl. az 590-es sorban kiadom, hogy POKE 56,245, akkor hirtelen megjön a hatása az elõzõ soroknak.

Lehet akkor úgy olvasgatni SPEEK utasítással címekrõl egymás után sokat, hogy a POKE 56,201 be van kapcsolva, és kicsit késõbb jön POKE 56,245? SPEEK utasítással olvasná ki a karakterek kódjait, és ezek a karakterek kerülnek a képernyõre, szóval kb. 400 darab SPEEK utasítás után jönne egy POKE 56,245, és akkor hirtelen megjelenne gondolom az összes kiolvasott karakter a képernyõn.
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: Általános BASIC Kérdések
« Reply #244 on: 2012.March.16. 15:16:20 »
A videó változók értékét a videó megszakítási rutin írja be a Nickbe (Border, Status, Bias), így ha le van tiltva a megszakítás, akkor nem jutnak érvényre.

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9898
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Általános BASIC Kérdések
« Reply #245 on: 2012.March.16. 15:26:03 »
A videó változók értékét a videó megszakítási rutin írja be a Nickbe
Akkor nem is a SPEEK miatt volt ez, hanem a BORDER és a POKE 56 "nem szeretik egymást". Mindig tanul az ember.
Köszi a helpet!
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9898
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Általános BASIC Kérdések
« Reply #246 on: 2012.March.21. 22:32:32 »
Korábban volt szó errõl a címátírásos dologról.

SPOKE WS,I,ORD(A$)

Az I értéke 1 és hány között lehet, mennyi a határ? Mert akkor ezzel a módszerrel "fel lehetne venni" és vissza lehetne játszani pl. egy Hamika játszmát is, minden lépésben figyelné a gép, megváltozik-e a kígyó iránya, és ha igen, merre, és ezt letárolná az I szegmensen, és így csodálatos játékunkat vissza is lehetne játszani úgy, hogy felvételnél minden egyes lépésben ír a következõ szegmensre egy értéket, attól függõen, hogy megváltozik-e a kígyó iránya, és ha igen, merre, és visszajátszásnál minden egyes lépésben SPEEK-kel lekérdezi a szegmens értékét, és annak megfelelõen változtatja vagy nem változtatja a kígyó irányát. Gondoltam már ilyesmire valami nagy string definiálásával is szegmensezés helyett, csak ott nem lehet túl nagy értékeket megadni.
Vagy ami még érdekesebb lenne, a Holdraszállás játékban is lehetne replay. De pl. a Bomber játékban is. Vagy akár Reversi-Dáma-Awari játszmákat is vissza lehetne játszani. Az átírt memóriaterületet fájlba el lehetne menteni, és a játékba vissza lehetne tölteni, így akár több replay-t is megnézhetnénk egymás után.
Olyat is lehetne, hogy egy pacman játékhoz az ellenség mozgását tárolná külön fájlban, és egy adott szint indulásakor betöltené az adatokat, ami alapján a szörny mozog. Persze úgy lenne izgalmas, ha több variáció is lenne, és a sok közül véletlenszerûen választana ki egyet a gép.
7719-nél csak nagyobb lehet az I maximális értéke, de már ennyivel is sok mindent meg lehetne csinálni.
« Last Edit: 2012.March.21. 22:39:34 by szipucsu »
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: Általános BASIC Kérdések
« Reply #247 on: 2012.March.21. 22:47:02 »
Az I értéke 1 és hány között lehet
0-16383

Offline Lacika

  • EP addict
  • *
  • Posts: 3191
  • Country: hu
    • http://www.ep128.hu
Re: Általános BASIC Kérdések
« Reply #248 on: 2012.March.22. 07:58:48 »
Szipucsu DotCollector pályaszerkesztõje kapcsán kaphatnánk útmutatót a FILE bõvítés BASIC programból való használatához? Könnyen le lehet kezelni, ha nincs bõvítés, marad a hagyományos névbeírós megoldás.

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9898
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Általános BASIC Kérdések
« Reply #249 on: 2012.March.26. 14:42:59 »
Szipucsu DotCollector pályaszerkesztõje kapcsán kaphatnánk útmutatót a FILE bõvítés BASIC programból való használatához?
Ezt nem értem, pontosan mire is gondolsz. :D
« Last Edit: 2012.March.26. 16:13:00 by szipucsu »
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline Lacika

  • EP addict
  • *
  • Posts: 3191
  • Country: hu
    • http://www.ep128.hu
Re: Általános BASIC Kérdések
« Reply #250 on: 2012.March.26. 14:48:38 »
Ezt nem értem, pontosan mire is gondolsz. :D

Hogyan lehet BASIC programból használni a FILE bõvítést?

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9898
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Általános BASIC Kérdések
« Reply #251 on: 2012.March.26. 14:52:14 »
Hogyan lehet BASIC programból használni a FILE bõvítést?
TAPE: vagy DISK: helyett FILE:-t kell beírni. Vagy ennél bonyolultabb?  :oops:
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14723
  • Country: hu
    • http://enterprise.iko.hu/
Re: Általános BASIC Kérdések
« Reply #252 on: 2012.March.26. 15:16:53 »
TAPE: vagy DISK: helyett FILE:-t kell beírni. Vagy ennél bonyolultabb?  :oops:
Szerintem Laci nem a "FILE:"-re gondol, hanem a ":FILE"-re  :oops:

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9898
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Általános BASIC Kérdések
« Reply #253 on: 2012.March.26. 15:24:59 »
:FILE
Hú, de ismerõs, de ez hol is van?
És ennek mi köze a Dot Collector pályaszerkesztõjéhez? :D
Ennek se file, se farka...
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline IstvanV

  • EP addict
  • *
  • Posts: 4822
Re: Általános BASIC Kérdések
« Reply #254 on: 2012.March.26. 16:39:21 »
[ Guests cannot view attachments ]
« Last Edit: 2012.March.26. 16:59:29 by IstvanV »