Welcome, Guest. Please login or register.


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

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9933
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Általános BASIC Kérdések
« Reply #540 on: 2014.July.06. 12:46:11 »
Quote from: Zozosoft
BFF6-7h (49142-3) címről olvasható ki a kezdete.
Ez így nekem kínai. Ha pl. az IS-BASIC I-jét akarjuk átírni valami más betűre, akkor SPOKE x,y,z-ből mennyi lenne az x,y,z?
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: Általános BASIC Kérdések
« Reply #541 on: 2014.July.06. 12:58:58 »
Felteszem azt akarja mondani Zozo, csak nem eleg reszletesen mondja, hogy a status sor memoriajanak kezdocime nem fix, hanem le van tarolva az altala megadott cimre.

Vagyis eloszor ki kell olvasni a memoriabol az altala megadott cimrol, hogy hol van a status sor memoriajanak a cime, az lesz a status sor elso karakterenek cime, ha oda irsz atirod az elso karakteret a status sornak.

Ehhez hozza kell adni annyit, amennyi karakterrel az I arrebb van, ha az I -t akarod atirni, nem pedig az elso karaktert.

De valszeg nem lesz a dologban nagy oromod, hacsak nem megszakitasban irod at, mert a rendszer ugyis frissiti a status sort sztm mindig, es el fogja rontani a te felulirasodat ... valszeg ...
Z80 System

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9933
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Általános BASIC Kérdések
« Reply #542 on: 2014.July.06. 13:08:29 »
Hogyhogy nem fix? Géptípusonként (angol, német), konfigurációnként eltérhet?
Tudom, ha pl. basic programból kiadjuk az utasítást és a program véget ér, akkor visszaáll a korábbi status. De amíg fut a program, addig a status is marad.
Zozo (49142-3)-t írt. Elsőre kivonásnak néztem ezt. :D Kb. ennyit értek ehhez. De próbálgattam programból a SPOKE 255,49412,akármennyi utasításokat, és 49412-nél nagyobb számokkal is próbáltam, de nem működött nekem, biztos nem jól értettem.
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: Általános BASIC Kérdések
« Reply #543 on: 2014.July.06. 13:20:47 »
Quote
Hogyhogy nem fix? Géptípusonként (angol, német), konfigurációnként eltérhet?
Igen, vagy akár még mástól is, nem csak géptípustól, simán attól is hogy milyen hardverek vannak épp rácsatlakoztatva a gépre, vagy romok, vagy akármik. Ha van cím változója, akkor bármit beállíthat az EXOS, és onnantól az lesz a status sor címe.

Quote
Tudom, ha pl. basic programból kiadjuk az utasítást és a program véget ér, akkor visszaáll a korábbi status. De amíg fut a program, addig a status is marad.
Úgy legyen, de ha program futása közben is lefrissül, akkor ne legyél nagyon meglepve ... :)


Quote
Zozo (49142-3)-t írt. Elsőre kivonásnak néztem ezt. Kb. ennyit értek ehhez. De próbálgattam programból a SPOKE 255,49412,akármennyi utasításokat, és 49412-nél nagyobb számokkal is próbáltam, de nem működött nekem, biztos nem jól értettem.

Szerintem ő nem kivonást akart, hanem a címek ugye 2 bájtosak 16 bites címzésnél, és megadta mindkét bájtot.

Neked azt szerintem úgy kell felhasználnod, hogy KIOLVASOL a memóriából 49143 -ról, azt megszorzod 256-tal, majd hozzáadod a 49142 -ről kiolvasott bájtot, és ez lesz az első status karakter címe.

Tehát remélve, hogy a status sor címe mindíg a rendszer szegmensen marad, és másik szegmensre azért nem tolja át az EXOS, valami ilyesmit kéne csinálj:

SPOKE 255, ( PEEK(49143)* 256+ PEEK(49142)+ ahányadik_status_karaktert_írni_akarod ), akármennyi

Csak én meg nem tudom a memóriából kiolvasó függvény nevét ... :)

Az általad írt SPOKE formátumból talán:
SPEEK(255, 49143)

SPEEK(255, 49142)


de nem biztos ...
« Last Edit: 2014.July.06. 13:29:51 by Z80System »
Z80 System

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: Általános BASIC Kérdések
« Reply #544 on: 2014.July.06. 13:25:54 »
A 65536 -ok 256 -ra változtak ... bocsesz ... régen volt már a 8 bit ... :)
Z80 System

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14735
  • Country: hu
    • http://enterprise.iko.hu/
Re: Általános BASIC Kérdések
« Reply #545 on: 2014.July.06. 13:44:02 »
Z80System jól írja a lényeget.
Mivel BASIC alatt a rendszerszegmens van a 2. lapon, így használható a sima POKE PEEK is, a címet az említett ST_POINTER változóból kell kiolvasni, mivel EXOS 2.0 és 2.1+ esetén máshol van.
Az első pár karaktert a billentyűzetkezelő írja felül megszakításban (CAPS és társai), a végét meg az editor. A közepét meg a BASIC parancsmódban, vagyis program alatt használható.

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: Általános BASIC Kérdések
« Reply #546 on: 2014.July.06. 13:56:10 »
Hááát ... nekem nem ment ... :)
Z80 System

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14735
  • Country: hu
    • http://enterprise.iko.hu/
Re: Általános BASIC Kérdések
« Reply #547 on: 2014.July.06. 13:57:42 »
Quote from: Z80System
Hááát ... nekem nem ment ... :)
Parancssorból nem is fog, mert egyből felülírja a BASIC :-)

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: Általános BASIC Kérdések
« Reply #548 on: 2014.July.06. 13:59:53 »
Quote
Z80System jól írja a lényeget.
Te tényleg csak a lényeget ... :)

"SPEEK(255, 49143)"

Hogy akarnék már 49ezret kiolvasni egy szegmensről ... :)
Z80 System

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9933
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Általános BASIC Kérdések
« Reply #549 on: 2014.July.06. 16:24:51 »
Nekem ez nagyon kínai. :D

Ebbe a programba mit kéne beleírni, hogy felülírja a status sort a DATA sorokban megadott betűkkel, lehetőleg mindenféle konfigurációban?


Code: [Select]
100 RESTORE
110 FOR A=1 TO kb. 30
120   READ A$
130   SPOKE valamennyi,valamennyi+A,ORD(A$)
140 NEXT A
150 DATA E,Z," ",A," ",S,Z,O,V,E,G," ",K,E,R,U,L," ",A," ",S,T,A,T,U,S," ",S,O,R,B,A

100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline Z80System

  • EP addict
  • *
  • Posts: 3848
  • Country: hu
Re: Általános BASIC Kérdések
« Reply #550 on: 2014.July.06. 16:29:08 »
hat ami ott van a mellekelt kepen.
amelyikre irtam hogy nem muxik.
zozo szerint az muxik, de csak egy program futasaig.
a poke sorban.
« Last Edit: 2014.July.06. 19:22:11 by Z80System »
Z80 System

Offline geco

  • EP addict
  • *
  • Posts: 7118
  • Country: hu
    • Támogató Támogató
Re: Általános BASIC Kérdések
« Reply #551 on: 2014.July.08. 12:53:11 »
Műxik, itt a példa :)

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14735
  • Country: hu
    • http://enterprise.iko.hu/
Re: Általános BASIC Kérdések
« Reply #552 on: 2014.July.08. 13:04:46 »
És ha a karakterkódhoz +128-at adunk, akkor piros lesz.

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9933
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Általános BASIC Kérdések
« Reply #553 on: 2014.July.08. 18:21:02 »
Ez nagyon király, köszi mindenkinek!
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline Lacika

  • EP addict
  • *
  • Posts: 3199
  • Country: hu
    • http://www.ep128.hu
Re: Általános BASIC Kérdések
« Reply #554 on: 2014.August.06. 09:47:18 »
A BASIC-ban nem lehetne megkeresni azt a rutint, ami ellenőrzi a SET VIDEO X változóban megadott értéket és a maximális 42-őt átírni 44-re?