Hallo, Gast |
Du musst dich registrieren bevor du auf unserer Seite Beiträge schreiben kannst.
|
Benutzer Online |
Momentan sind 18 Benutzer online » 0 Mitglieder » 14 Gäste Applebot, Bing, Google, Yandex
|
Aktive Themen |
AmySequencer - MIDI- und ...
Forum: Projects
Letzter Beitrag: HelmutH
06.12.2023, 20:20
» Antworten: 3
» Ansichten: 4.388
|
"AB_Template" Vorlagen fü...
Forum: Projects
Letzter Beitrag: HelmutH
04.12.2023, 20:46
» Antworten: 10
» Ansichten: 6.728
|
RedPill - Game Constructi...
Forum: Projects
Letzter Beitrag: HelmutH
04.12.2023, 20:27
» Antworten: 36
» Ansichten: 64.936
|
Ein paar Anfängerfragen
Forum: Questions & Answers
Letzter Beitrag: hackball
26.10.2023, 21:49
» Antworten: 1
» Ansichten: 332
|
Guten Tag und Hallo
Forum: Off Topic
Letzter Beitrag: HelmutH
20.10.2023, 22:37
» Antworten: 5
» Ansichten: 1.335
|
Blitz Basic/AmiBlitz³ Wor...
Forum: Tutorials
Letzter Beitrag: HelmutH
20.10.2023, 22:25
» Antworten: 25
» Ansichten: 96.038
|
ein kurzes hallo
Forum: Off Topic
Letzter Beitrag: bruZard
17.07.2023, 17:31
» Antworten: 7
» Ansichten: 9.252
|
FACE- Aga
Forum: Off Topic
Letzter Beitrag: HelmutH
16.07.2023, 21:12
» Antworten: 1
» Ansichten: 919
|
slice oder display
Forum: Questions & Answers
Letzter Beitrag: hackball
13.07.2023, 17:36
» Antworten: 4
» Ansichten: 1.679
|
library erstellen
Forum: Questions & Answers
Letzter Beitrag: xp^tsa
13.07.2023, 12:17
» Antworten: 4
» Ansichten: 1.772
|
|
|
Ein paar Anfängerfragen |
Geschrieben von: dent - 25.10.2023, 20:39 - Forum: Questions & Answers
- Antworten (1)
|
 |
Hallo,
ich habe vor kurzem angefangen, mir AmiBlitz etwas anzuschauen.
Beim Beispiel-Programmieren sind einpaar Fragen aufgekommen, vielleicht kann mir jemand Hinweise dazu geben:
1. Text:
Es war relativ leicht, einen Screen zu öffnen und ein paar Dinge reinzuzeichnen, unter anderem Text:
Screen 0,12 ; 25
ScreensBitMap 0,0 ; 8 hires + 4 bitplanes = 16 colors
RGB 1,15,0,0
...
Locate 20,20
Print"hello"+Chr$(10)+" world", Rnd(8), " und ", Int(Rnd(8))
Gibt es eine einfache Möglichkeit, den Text Pixelgenau zu setzen (ich glaube es gab in der Graphics-Library eine
Text() Funktion, aber vielleicht komme ich ja drumherum, mit Libs zu hantieren ... zumindest am Anfang)
2. Mouse:
Gibt es eine einfache Methode, die aktuelle Mausposition und den Button-Status abzufragen (ohne Libs/Events)?
Wenn ich mich richtig zurückerinnere, köennte ich wahrscheinlich einfach ein bestimmtes Bit in 0xbfe001 für die
linke Maustaste abfragen oder so (wahrscheinlich gibts ein peek), aber wie sieht es mit den absoluten Maus-Koordinaten aus?
Ich will möglichst keine Gadgets dafür nutzen ...
3. Pointer auf Array of Struct (Newtype):
Für eine eigene Priority-Queue Implementierung habe ich mir ein Struct Array definiert:
NEWTYPE .prioqueue
map_2_info.w
v.w
End NEWTYPE
Dim pq.prioqueue(20)
pq(0)\v = 55
Wie genau beschaffe ich mir dadrauf einen Pointer, Dinge wie
*pqp.prioqueue = pq(20)
scheinen nicht zu funktionieren. Ich will einen Pointer auf solche Structuren und Struct-Arrays, damit
ich den Pointer dann später als Parameter an eine Assembler-Funktion übergeben kann ...
Außerdem:
Kann ich mir sicher sein, daß wenn ich es schaffe, einen Pointer darauf an eine Assembler-Funktion zu übergeben,
daß das Layout dann so ist, wie man es erwarten würde, also Pointer zeigt dann in dem Beispiel auf:
16 bit map info[0], 16 bit v[0], 16 bit map info[1], 16 bit v[1], ..., 16 bit map info[20], 16 bit v[20]
Ohne irgendwas anderes dazwischen? Ich muss ja in Assember den genauen Aufbau kennen, damit ich dann damit
hantieren kann/davon lesen und darein schreiben kann...
Falls nein, ist irgendwo dokumentiert, wie BlitzBasic die Strukturen und Structarrays genau im Speicher aufbaut?
Danke schon mal, viele Grüße
|
|
|
slice oder display |
Geschrieben von: xp^tsa - 11.07.2023, 00:28 - Forum: Questions & Answers
- Antworten (4)
|
 |
habe vor ein reines ocs spiel zu codern und
hab da mal ne frage
slice oder display lib ?
welche der beiden libs verkraftet mehr
farbregister änderungen?
die erweiterungen displayscroll und rainbow der displaylib
sind kein grund um sie zu benutzen, rainbow geht nicht
mit ecs und ner 256 color palette aus ppaint
und displayscroll ist irgendwie zu langsam.
(allerdings hab ich zufällig bei der aktion rausbekommen,
dass man bei der displaylib doch nur 3 lines platz zwischen
2 copperlists braucht, das war bei mir immer um 16 pixel verschoben,
und hatte immer knappo 10 zeilen platz gelassen,
ich bin bei ner festen scorebar nie auf die idee gekommen, das
scrolling flag zu setzen in initcopperlist lololol)
|
|
|
library erstellen |
Geschrieben von: xp^tsa - 06.07.2023, 15:31 - Forum: Questions & Answers
- Antworten (4)
|
 |
hi,
also erstmal, mit erstaunen und freude habe ich festgestellt, wie einfach man eine
library mit der include erstellen kann
dennoch habe ich 1,2 kleine startprobleme
wenn ich zb den befehl agapalrgb als lib funktion mappe
und diesen dann halt zb in purebasic aufrufe
zeigt mir das kompilat die falschen farben an
bei zb Plot x,y,colorid funktioniert es einwandfrei, egal ob intern die x,y oder die color variable ein long oder word ist
es muss daran liegen, dass nur longs übergeben werden
irgendwie bräuchte ich ne übersicht über die blitz2 befehle, welcher
datentyp übergeben wird, das steht nirgends , ausser bei ein paar befehlen, das es word oder quick ist
und frage 2, wie übergebe ich einen string , zb wenn ich zb LoadBitmap id, "name" mappen will
|
|
|
Barnsley fern fractal |
Geschrieben von: hackball - 26.02.2023, 17:16 - Forum: Snippets & Libraries
- Antworten (2)
|
 |
This is a fun to do fractal with lots of numbers to play with for diffferent results.
You can read more about the algorithm and example code here:
https://en.wikipedia.org/wiki/Barnsley_fern
This is a quick implementation in BlitzBasic.
Code: WbToScreen1
num.l=1000000 ;number of iterations
Window1,0,0,ScreenWidth,ScreenHeight,$140F,"Barnsley fern fractal. it="+Str$(num),2,1
ResetTimer
x.q = 0
y.q = 0
nextX.q = 0
nextY.q = 0
originX = ScreenWidth / 2
s = Min( ScreenWidth, ScreenHeight ) / 10
For i.l = 1 To num
a.q = Rnd
If a.q < 0.01
nextX.q = 0
nextY.q = 0.16 * y.q
Else
If a.q >= 0.01 AND a.q < 0.08
nextX.q = 0.2 * x.q - 0.26 * y.q
nextY.q = 0.23 * x.q + 0.22 * y.q + 1.6
Else
If a.q >= 0.08 AND a.q < 0.15
nextX.q = -0.15 * x.q + 0.28 * y.q
nextY.q = 0.26 * x.q + 0.24 * y.q + 0.44
Else
nextX.q = 0.85 * x.q + 0.04 * y.q
nextY.q = -0.04 * x.q + 0.85 * y.q + 1.6
EndIf
EndIf
EndIf
x.q = nextX.q
y.q = nextY.q
WPlot x.q * s + originX, y.q * s,1
Next
Print Ticks," ticks"
Repeat
Until WaitEvent=$200 ;windowclose
End
and this is how it looks like:
|
|
|
Amiga Blitz Basic 2 Visual Studio Code Extension |
Geschrieben von: HelmutH - 06.09.2022, 20:00 - Forum: Projects
- Antworten (4)
|
 |
22.08.2022 Programmiersprache: Amiga Blitz Basic 2 Visual Studio Code Ext. 0.6.0
Youen Chéné ist dabei, eine Visual Studio Code Extension zu schreiben, die Amiga Blitz Basic 2 (und Amiblitz) Unterstützung bietet.
Die Syntaxhervorhebung ist in der frühen Alpha Version noch eingeschränkt.
Codeurs en Seine ist eine Programmierer-Community in der Normandie die von Youen Chéné organisiert wird.
Features: - Syntax-Hervorhebung.
- Snippets für die meisten Blitz Basic 2 Funktionen und Methoden.
- Gliederung zeigt Makros, Labels, Funktionen und Anweisungen.
- Integrierte Hilfe.
Diese Version von Youen Chéné ist ein Fork des vscode-amiga-blitzbasic-Projekts von 'MickGyver' und hat das Ziel, eine vollständige, native Javascript-Erweiterung zu bieten, die möglichst ohne externe Tools auskommt (außer UAE) und nicht nur auf Windows, sondern vielen Plattformen läuft (macOS, Linux, ...).
|
|
|
|