Welcome, Guest. Please login or register.


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

Offline Tomato77

  • EP user
  • *
  • Posts: 381
  • Country: hu
    • Támogató Támogató
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Chrome 89.0.4389.114 Chrome 89.0.4389.114
    • View Profile
Re: Általános BASIC Kérdések
« Reply #1530 on: 2021.April.02. 10:41:44 »
Szerintem mindannyian bekajáltuk Szipucsu április 1-i tréfáját. Gratula, jó volt, én még az igazi gépet is bekapcsoltam, hogy mit csinál. :) Jövőre visszakapod! :)
Kotasoft

Offline szipucsu

  • EP addict
  • *
  • Posts: 9465
  • Country: hu
    • Támogató Támogató
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 87.0 Firefox 87.0
    • View Profile
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Általános BASIC Kérdések
« Reply #1531 on: 2021.April.17. 14:12:55 »
Van valami gyakorlati jelentősége, amiért a HEX-es sorokat több sorba írják egy sor helyett? Működik mindenhogy, csak esztétikailag szebb, ha több sorban van?

Például ez:
Code: [Select]
  120 CODE LDCHAR=HEX$("DB,B2,F5,3E,FF,D3,B2,2A")
  130 CODE =HEX$("F4,BF,3E,06,85,6F,5E,23")
  140 CODE =HEX$("56,06,07,CB,13,CB,12,10")
  150 CODE =HEX$("FA,CB,B2,01,80,04,3E,6A")
  160 CODE =HEX$("F7,06,F1,D3,B2,C9,00,00")

egyetlen sorban is elférne, max. nem lenne olyan szép:

Code: [Select]
  120 CODE LDCHAR=HEX$("DB,B2,F5,3E,FF,D3,B2,2A,F4,BF,3E,06,85,6F,5E,23,56,06,07,CB,13,CB,12,10,FA,CB,B2,01,80,04,3E,6A,F7,06,F1,D3,B2,C9,00,00")
Szeretnék a sorokkal spórolni, például a Zzzipnél van egy határ már.
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline geco

  • EP addict
  • *
  • Posts: 6714
  • Country: hu
    • Támogató Támogató
  • OS:
  • Linux Linux
  • Browser:
  • Chrome 89.0.4389.86 Chrome 89.0.4389.86
    • View Profile
Re: Általános BASIC Kérdések
« Reply #1532 on: 2021.April.17. 15:56:18 »
szerintem nincs, csak a jobb atlathatosag.

Offline szipucsu

  • EP addict
  • *
  • Posts: 9465
  • Country: hu
    • Támogató Támogató
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 87.0 Firefox 87.0
    • View Profile
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Általános BASIC Kérdések
« Reply #1533 on: 2021.April.19. 15:43:40 »
Nem lehet egyetlen PRINT-en belül új sorokat kezdeni? A vessző a köv. tabulátorpozícióra ugrik, a pontosvessző ugyanott hagyja a kurzort, ahol van. Nyilván ha CHR$(13)-at írunk közbe, az jó, csak az hosszú, és a külön PRINT utasítás is jó, de nem oldható meg egyszerűbben? Például, hogy a következő dolgokat mind külön sorba írja, és ne kelljen külön print mindegyikhez:

PRINT a,b,b1,c,c1,str$(x),"supertext",g(1),g(2),g(3)

Még a read-data megoldáson gondolkozom, talán az a legjobb, ha nincs más, ott for ciklusban van a print és mindig egymás alá ír.
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Online Zozosoft

  • EP addict
  • *
  • Posts: 14300
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Firefox 87.0 Firefox 87.0
    • View Profile
    • http://enterprise.iko.hu/
Re: Általános BASIC Kérdések
« Reply #1534 on: 2021.April.19. 16:53:33 »
Rakd be a CHR$(13)-at egy változóba, és akkor már nem olyan hosszú :-)

Offline szipucsu

  • EP addict
  • *
  • Posts: 9465
  • Country: hu
    • Támogató Támogató
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 87.0 Firefox 87.0
    • View Profile
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Általános BASIC Kérdések
« Reply #1535 on: 2021.April.19. 17:02:23 »
Rakd be a CHR$(13)-at egy változóba, és akkor már nem olyan hosszú :-)
Nem rossz ötlet! pl. az A$ egész rövid.
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline Tomato77

  • EP user
  • *
  • Posts: 381
  • Country: hu
    • Támogató Támogató
  • OS:
  • Linux Linux
  • Browser:
  • Chrome 83.0.4103.106 Chrome 83.0.4103.106
    • View Profile
Re: Általános BASIC Kérdések
« Reply #1536 on: 2021.April.20. 23:15:15 »
Esetleg lehetne írni egy szubrutint string bemenő paraméterrel, ami egy spéci karakternél, amit amúgy nem írsz ki, új sorba printel. A rutin nyilván hosszabb egy sima printnél, de sok kiírásnál talán visszahozhatja ezt a hátrányt.
Kotasoft

Offline Tuby128

  • EP addict
  • *
  • Posts: 1116
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Firefox 78.0 Firefox 78.0
    • View Profile
Re: Általános BASIC Kérdések
« Reply #1537 on: 2021.December.27. 17:35:06 »
Szükségem lenne egy olyan rutinra vagy parancsra, ami egy 2 bájtos hexidecimális (pl. BFE0) kifejezést átalakít 2 bájtos számmá és ezt el tudom tárolni egy változóban.
Sajnos nem tudok decimálisban gondolkodni.

Offline szipucsu

  • EP addict
  • *
  • Posts: 9465
  • Country: hu
    • Támogató Támogató
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 95.0 Firefox 95.0
    • View Profile
    • Webnyelv.hu - Tanuljunk nyelveket!
Re: Általános BASIC Kérdések
« Reply #1538 on: 2021.December.27. 18:49:32 »
átalakít 2 bájtos számmá
Milyen az a 2 bájtos szám? (Lehet, mindenki tudja, csak én nem.)
Az Util programcsokorban a Számátalakító című átvált számrendszerek között számokat. Kiindulásnak talán jó lesz.
100 SOUND SOURCE 2,STYLE 128,PITCH 25.2,SYNC 1
110 SOUND PITCH 25,SYNC 1
120 ! Videos

Offline Tuby128

  • EP addict
  • *
  • Posts: 1116
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Firefox 78.0 Firefox 78.0
    • View Profile
Re: Általános BASIC Kérdések
« Reply #1539 on: 2021.December.27. 21:33:12 »
2 bájtos szám=16 bites szám
decimális.
Sajnos a Poke meg Peek a basicben csak decimális számot fogad. Én pedig nem akarom átváltani, mert nekem úgy vannak meg hexidecimálisban, hogy B900h meg ilyesmi.

Offline ergoGnomik

  • EP addict
  • *
  • Posts: 1122
  • Country: hu
  • Stray cat from Commodore alley
  • OS:
  • Windows NT 6.3 Windows NT 6.3
  • Browser:
  • Firefox 91.0 Firefox 91.0
    • View Profile
Re: Általános BASIC Kérdések
« Reply #1540 on: 2021.December.28. 07:24:23 »
Szükségem lenne egy olyan rutinra vagy parancsra, ami egy 2 bájtos hexidecimális (pl. BFE0) kifejezést átalakít 2 bájtos számmá és ezt el tudom tárolni egy változóban.
Ez?

Quote
Sajnos nem tudok decimálisban gondolkodni.
Ez igen furcsa! Hogyan jutottál ebbe az állapotba? Ha azt kérdezem mennyi 12+29, akkor tényleg 3B-t válaszolsz rá?

Offline ergoGnomik

  • EP addict
  • *
  • Posts: 1122
  • Country: hu
  • Stray cat from Commodore alley
  • OS:
  • Windows NT 6.3 Windows NT 6.3
  • Browser:
  • Firefox 91.0 Firefox 91.0
    • View Profile
Re: Általános BASIC Kérdések
« Reply #1541 on: 2021.December.28. 07:29:17 »
Én pedig nem akarom átváltani...
Ezt simán meg tudod csinálni a Windows beépített számológépével, ha átállítod programozó módba (Alt+3 talán). És gondolom Linuxban vagy MacOS-ben is van hasonló szolgáltatás. Amúgy is érdemesebb manapság emulátorban fejleszteni és csak a végső tesztelésnél használni igazi gépet. Szerintem.

Online Zozosoft

  • EP addict
  • *
  • Posts: 14300
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Firefox 95.0 Firefox 95.0
    • View Profile
    • http://enterprise.iko.hu/
Re: Általános BASIC Kérdések
« Reply #1542 on: 2021.December.28. 09:37:42 »
Szükségem lenne egy olyan rutinra vagy parancsra, ami egy 2 bájtos hexidecimális (pl. BFE0) kifejezést átalakít 2 bájtos számmá és ezt el tudom tárolni egy változóban.
pl így lehet megoldani:
Code: [Select]
  100 POKE HEX("bfe0"),255
 1000 DEF HEX(H$)
 1010   LET HEX=256*ORD(HEX$(H$(1:2)))+ORD(HEX$(H$(3:4)))
 1020 END DEF
Elején a példa POKE a keretet állítja át EXOS 2.1+ alatt.

Offline gflorez

  • EP addict
  • *
  • Posts: 3382
  • Country: es
    • Támogató Támogató
  • OS:
  • Windows 7/Server 2008 R2 Windows 7/Server 2008 R2
  • Browser:
  • Firefox 95.0 Firefox 95.0
    • View Profile
Re: Általános BASIC Kérdések
« Reply #1543 on: 2021.December.28. 10:18:40 »
Ez a web aranyat ér számomra.

Offline Tuby128

  • EP addict
  • *
  • Posts: 1116
  • Country: hu
  • OS:
  • Windows NT 10.0 Windows NT 10.0
  • Browser:
  • Firefox 78.0 Firefox 78.0
    • View Profile
Re: Általános BASIC Kérdések
« Reply #1544 on: 2021.December.28. 16:45:38 »
pl így lehet megoldani:
Code: [Select]
 100 POKE HEX("bfe0"),255
 1000 DEF HEX(H$)
 1010   LET HEX=256*ORD(HEX$(H$(1:2)))+ORD(HEX$(H$(3:4)))
 1020 END DEF

Köszi Zozo! Pont erre gondoltam!