ENTERPRISE KLUB
2023. december 9.,  14-19 óráig
1074 Budapest, Károly krt. 3/A.
Részletek
Welcome, Guest. Please login or register.


Author Topic: Hasznos kis Basic programok (Read 21028 times)

Offline Zozosoft

  • Global Moderator
  • EP addict
  • *
  • Posts: 14601
  • Country: hu
    • http://enterprise.iko.hu/
Re: Hasznos kis Basic programok
« Reply #15 on: 2019.September.24. 09:18:07 »
Nagyon jól néz ki!

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9751
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Hasznos kis Basic programok
« Reply #16 on: 2023.September.17. 21:40:17 »
Ezzel a programmal színátmeneteket vadászhatunk össze. Amelyik színen a kurzor áll, annak a színkódját kijelzi:
[ Guests cannot view attachments ]

Ez a programrész pedig arra jó, hogy 16 színű grafikus képernyőre és attribútum képernyőre karakterenként változó színű szöveget írjunk. Ahova írni akarjuk a szöveget, oda kell állítanunk egy PRINT#csat,AT x,y:; utasítással. Utána egy azonosítót adni az oda írandó szövegnek (pl. LET ID=1), és megadni a csatornaszámot, amelyik csatornára írni akarunk (pl. LET CHN=101), utána meghívni az irkáló eljárást (CALL COLORTEXT).
Például:

Code: [Select]
1240   PRINT #49,AT 1,9:;:LET ID=7:LET CHN=49:CALL COLORTEXT
A COLORTEXT eljárásban az ID-nél megadott azonosítóhoz tartozó adatok alapján írja ki a szöveget. Mindegyik szöveghez 3 DATA sor tartozik. Az elsőben magát a szöveget kell megadni, pl.

Code: [Select]
9310   DATA "  SCORE:0         LIVES:5"
A másodikban a szöveg által használt palettát kell megadni, pl.

Code: [Select]
9320   DATA 0,146,166,243,94,7,221,24
A harmadikban a megadott szöveghez karakterenként meg kell adni, hogy a palettáról hányadik színnel írja ki az adott karaktert, pl.

Code: [Select]
9330   DATA 1,1,1,2,1,2,7,5,6,0,0,0,0,0,0,0,0,0,3,4,3,4,3,5,6
[ Guests cannot view attachments ]
[ Guests cannot view attachments ]

Persze lehetne máshogy is, pl. hogy ne kelljen megadni, hányadik karakter milyen színű legyen, ki lehetne találni bizonyos sémákat, amik alapján a gép magától határozná meg a karakterek színét. Erre kellett a másik topikban program, hogy 1 és 6 között oda-vissza léptesse a számokat. De biztos azt is meg lehetne csinálni, hogy automatikusan megtalálja a szöveg közepét a gép, és a szöveg elején 1-es színnel írjon, és csak a szöveg közepére érje fokozatosan el a 7-es színt, majd a szöveg végére megint az 1-es színnel írjon.
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline ergoGnomik

  • EP addict
  • *
  • Posts: 1242
  • Country: hu
  • Stray cat from Commodore alley
Re: Hasznos kis Basic programok
« Reply #17 on: 2023.September.18. 09:47:45 »
Ezt a színezett karakterlánc kiírást nem lehetne escape szekvenciák használatával megoldani? Csak egy ötlet.

Offline szipucsu

  • Global Moderator
  • EP addict
  • *
  • Posts: 9751
  • Country: hu
    • Támogató Támogató
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Hasznos kis Basic programok
« Reply #18 on: 2023.September.18. 19:23:55 »
Ezt a színezett karakterlánc kiírást nem lehetne escape szekvenciák használatával megoldani?
Ha jól sejtem, a link alapján a PRINT chr$(27) "I" <tintaszín> lenne a SET INK <tintaszín> helyett... Talán rövidebb és gyorsabb lenne, ha nem kéne váltogatni a PRINT és SET INK utasításokat. De még nem próbáltam. (Nem tudom, a hegyes zárójel csak szemléltetés miatt van-e.)
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline ergoGnomik

  • EP addict
  • *
  • Posts: 1242
  • Country: hu
  • Stray cat from Commodore alley
Re: Hasznos kis Basic programok
« Reply #19 on: 2023.September.18. 19:44:38 »
(Nem tudom, a hegyes zárójel csak szemléltetés miatt van-e.)
Írja az alfejezet fő bekezdésében (III. 4.2), hogy a következőben (III. 5) elmagyarázzák a bonyolultabb szekvenciákat. Ott megtalálod a jelölés magyarázatát.

Offline gflorez

  • EP addict
  • *
  • Posts: 3559
  • Country: es
    • Támogató Támogató
Re: Hasznos kis Basic programok
« Reply #20 on: 2023.September.19. 14:07:55 »
Néha használtam ESC szekvenciákat. Ezek olyanok, mint a karakterláncok, és ezek a <n> számok egyszerű bájtok, amelyeket CHR$(n)-ként kell hozzáadni(&) a karakterlánchoz.

-----

I have used ESC sequences sometimes. They are like strings, and these <n> numbers are simple bytes that must be added(&) as CHR$(n) to the string.

Offline gflorez

  • EP addict
  • *
  • Posts: 3559
  • Country: es
    • Támogató Támogató
Re: Hasznos kis Basic programok
« Reply #21 on: 2023.September.21. 13:05:41 »
Did it work?

I mean:      ESC$=CHR$(27)&"I"&CHR$(1) -----------> PRINT £102:ESC$

or directly  PRINT £102:CHR$(27);"I";CHR$(1)