Dark Bit Factory & Gravity
GENERAL => General chat => Topic started by: Architect_414 on October 08, 2007
-
If anyone here remembers GFA Basic for Atari ST?
Well thats the main language currently for ones-self
Just started a few weeks ago, got a few textscrollers going, wonder if anyone knows how to do some tricks in GFA?
Post here please if you do, id like to learn some new stuff :)
EDIT: Ooops, i think i posted this in the wrong place! Sorry! Move if need be ::)
-
If anyone here remembers GFA Basic for Atari ST?
nope I couldnt remmy these but I am sure people out there can help you.
I think you should learn freebasic(they are free to download) as it can do anythings that you want to do on pc such as demo coding.
There is Freebasic forum and also tutorial too.
:cheers:
-
I used to be a GFA coder. (http://www.pouet.net/groups.php?which=3493) And a fan of dots and synchronized effects.
What kind of things have you done, want to do ?
Once you reach a certain level, you end up generating massive .LST with a zillion of CARD{foo}=bar and so on. :p
Hotshot: Do not under estimate GFA basic. It is 2-5x slower than ASM but impressive things can be done. The last effect I worked on, back in the days, was an 800 dots curve in fullscreen, 100% in GFA basic. On Atari ST, doing a fullscreen requires that ALL the code is synchronized and the frequency of the screen is changed 4x per scanline. ... BTW one VBL is 40,000 NOP on Atari ST ;)
-
Hotshot: Do not under estimate GFA basic. It is 2-5x slower than ASM but impressive things can be done. The last effect I worked on, back in the days, was an 800 dots curve in fullscreen, 100% in GFA basic. On Atari ST, doing a fullscreen requires that ALL the code is synchronized and the frequency of the screen is changed 4x per scanline.
Amen to that.
I don't think any language should be bashed and if you're happy with it keep it going, I would also be really interested to see your scrollers :)
-
If anyone here remembers GFA Basic for Atari ST?
nope I couldnt remmy these but I am sure people out there can help you.
I think you should learn freebasic(they are free to download) as it can do anythings that you want to do on pc such as demo coding.
There is Freebasic forum and also tutorial too.
:cheers:
Heh, for PC i use c++ (even though im not good at it!) ;D
I used to be a GFA coder. (http://www.pouet.net/groups.php?which=3493) And a fan of dots and synchronized effects.
What kind of things have you done, want to do ?
Once you reach a certain level, you end up generating massive .LST with a zillion of CARD{foo}=bar and so on. :p
Well ive mainly just done text scrollers :-[
But im really interested in raster bars, i must say they are one of my favorite oldskool demo tricks :)
-
Hotshot: Do not under estimate GFA basic. It is 2-5x slower than ASM but impressive things can be done. The last effect I worked on, back in the days, was an 800 dots curve in fullscreen, 100% in GFA basic. On Atari ST, doing a fullscreen requires that ALL the code is synchronized and the frequency of the screen is changed 4x per scanline.
Amen to that.
I don't think any language should be bashed and if you're happy with it keep it going, I would also be really interested to see your scrollers :)
Hehe, im really sure you wouldnt want to see my scrollers, their Extremely simple ones, but nevertheless, im proud of them :D
-
I don't think any language should be bashed and if you're happy with it keep it going,
I agree
-
I didn't do much rasters, but a few plasmas. The idea is basically the same. First and foremost you should go in Supervisor mode and switch off the interuptions:
super%=GEMDOS(32,L:0)
BYTE{&Hfffffa09}=0Then, in your main loop, "stabilize" your code with the beam:REPEAT
b|=BYTE{&HFFFF8209}
UNTIL b|
VOID SHL(1,-b|)Then set the background color ( one scanline = 128 NOP @ 50Hz, so you might need to wait until the next scanline )CARD{&HFFFF8240}=value;And finally on exit, reset the interuptions and switch back to User mode:BYTE{&HFFFA09}=100
~GEMDOS(32,L:super%)
-
I didn't do much rasters, but a few plasmas. The idea is basically the same. First and foremost you should go in Supervisor mode and switch off the interuptions:[code]super%=GEMDOS(32,L:0)
BYTE{&Hfffffa09}=0Then, in your main loop, "stabilize" your code with the beam:REPEAT
b|=BYTE{&HFFFF8209}
UNTIL b|
VOID SHL(1,-b|)Then set the background color ( one scanline = 128 NOP @ 50Hz, so you might need to wait until the next scanline )CARD{&HFFFF8240}=value;And finally on exit, reset the interuptions and switch back to User mode:BYTE{&HFFFA09}=100
~GEMDOS(32,L:super%)[/code]
Hmm ill try that right now, as long as it'll work in HI-RES (Monochrome) as this atari wont work in anything but, if not ill have to wait till tommorow till i get the other atari out
Thanks! :cheers:
-
Well, you can try than in Saint (http://saint.atari.org/) or Steem (http://steem.atari.st/). Both are REALLY REALLY good.
-
Well, you can try than in Saint (http://saint.atari.org/) or Steem (http://steem.atari.st/). Both are REALLY REALLY good.
I generally use STeem for most things, but for coding i prefer going the proper hardware, jsut gives you that feel..that nothing else can :D
-
Ok p01,
Im going to ask quite possibly the silliest question.
How in gods name do i get into supervisor mode?
Sometimes i really hate not having much knowledge, but i suppose we all have to start somewhere.
-
Doin' it the hard way is like
pea 0.w
move.w #$20,-(sp)
trap #1
:)
Good ole' times ... I really had that in my mind ...
SLiPPY
-
Doin' it the hard way is like
pea 0.w
move.w #$20,-(sp)
trap #1
:)
Good ole' times ... I really had that in my mind ...
SLiPPY
And that'll take me into supervisor mode?
Thanks slippy, good to see you around again :)
-
from within 68k ASM ... yes ... it does :)
Personally I never used GFA Basic - just for tool coding those days (converting 4bitplane images to 1 bitplane aso.) ... I had my fingers on omicron basic and STOS - but for the "serious" stuff I loved to use Turbo Assembler and its Bugaboo ... my oh my ... that's been fun! :)
Even my SidSound Designer (http://www.pouet.net/prod.php?which=13336) was completely done in 68k ASM
What group were/are you in?
-
or the easy way
super%=GEMDOS(32,L:0) as I said above ;)
-
from within 68k ASM ... yes ... it does :)
Personally I never used GFA Basic - just for tool coding those days (converting 4bitplane images to 1 bitplane aso.) ... I had my fingers on omicron basic and STOS - but for the "serious" stuff I loved to use Turbo Assembler and its Bugaboo ... my oh my ... that's been fun! :)
Even my SidSound Designer (http://www.pouet.net/prod.php?which=13336) was completely done in 68k ASM
What group were/are you in?
Ah i see, well me and assembler of any architecture do NOT agree! =P
But i think the source that p01 included had the supervisor mode n whatnot in it, but it crashed my atari, now to try again!
And in answer to your question, ive never been in a demogroup :)
-
And in answer to your question, ive never been in a demogroup :)
Believe me, you're better off like that sometimes.
-
And in answer to your question, ive never been in a demogroup :)
Believe me, you're better off like that sometimes.
Hmm why do you think this? ??? :)
-
One reason;
http://dbfinteractive.com/index.php?topic=2410.0 (http://dbfinteractive.com/index.php?topic=2410.0)
For now, enjoy the learning process and make stuff for the friendship and the fun mate.
We will help you here as much as we can as long as you promise to show us what you make :)
-
One reason;
http://dbfinteractive.com/index.php?topic=2410.0 (http://dbfinteractive.com/index.php?topic=2410.0)
For now, enjoy the learning process and make stuff for the friendship and the fun mate.
We will help you here as much as we can as long as you promise to show us what you make :)
Ah i see why, ill just stick to staying out of a demogroup i think for now
And thankyou for those kindwords, if i do make something worthwhile, this'll be the first place i post it ;D
-
I remember GFA on the Amiga, but never got the chance to use it. move.w #2700,sr would get the Amiga into supervisor mode. Completely useless to you, I know :)
Have fun with the coding!
Jim
-
I remember GFA on the Amiga, but never got the chance to use it. move.w #2700,sr would get the Amiga into supervisor mode. Completely useless to you, I know :)
Have fun with the coding!
Jim
Well, i was planning on buying an amiga for the PAULA soundchip capabilities, so i may end up using that one day in the future, but for now, Atari ST is the way :cheers:
And thanks!
-
I think ATARI ST got Better sound chip than Amiga...I think correct me if I am wrong.
:cheers:
-
I think ATARI ST got Better sound chip than Amiga...I think correct me if I am wrong.
:cheers:
Technically Amiga has the better soundchip, whereas the YM2149 (Atari) only has 3 channels, the Amiga PAULA has four, but at the end, its all down to personal preference, and mines the Atari ST!
PS: I had to keep asking questions, i think it makes me sound like im not doing anywork, but i am! p01, could you give me a little hand? The code you sent keeps crashing my atari :( (Two Bombs so i have to reset)
-
The Amiga and ST both have a 68000, therefore move.w #2700,sr works on both.
Hotshot :p the Paula is much more advanced than the YM2149 or the Atari STe's DMA. It can play sound 4 samples at any frequency, and IIRC it can even apply volume and effects to them. OTOH the DMA can only play samples at fixed freq ( 6.25, 12.5 ,25 and 50 Khz ) with NO effect. The YM2149 is 3 voices square wave and noise, with one envelope for all 3 channels. Quite limited, but by changing the freq, volume, env very quickly people managed to play soundtracks ... but it's CPU hungry. However the ST had a MIDI interface, which why professional musician prefered it.
-
Ahh I see.....well I remmy when mate of my mate who ATARI ST when I was younger and I was listen to their game music called god or shadow of the beast 2 I think....the music was amazing at time.
I had Amiga 500 plus in old days and Amos was fine programming language of it time!
Also the Amiga beat any today pc and for fact If I remmy correctly that Amiga beat PC in demo coding competion in 2006 !
There is Window version of GFA Basic on google you know.
enjoy your coding of GFA BASIC :kewl:
:cheers:
-
Architect_414: ??? dunno, that might help if your posted your code. Also I never worked on a monochrome screen. Although you have an actual Atari, I recommend you to work on emulator. It's much more convenient, you can reboot the machine instantly, save/restore states, debug, load/save chunks of memory, ...
Hotshot: The fact that one demo won against some PC at the Assembly proves nothing but that there still is active people who know how to show their machine some love. Also the amiga used for Starstruck is not your regular A500 or A1200. It was an A1200 with a 68060 at 50Mhz. And still many parts where "simply" a(n animated) skybox with a textured model on top. What really made it was the top notch music and graphics.
-
Architect_414: ??? dunno, that might help if your posted your code. Also I never worked on a monochrome screen. Although you have an actual Atari, I recommend you to work on emulator. It's much more convenient, you can reboot the machine instantly, save/restore states, debug, load/save chunks of memory, ...
Well p01, ill see if i can get your code running on my other atari with a colour monitor, if not, ill switch over to STeem.
Just incase im being rather thick (its not unusual you know ;)), i didnt have to add any of my own code to yours did i?
Thanks.
-
Hey,
perhaps it's useful for you to join that forum here as well ... a whole bunch of real Atari cracks outta there ;)
http://www.atari-forum.com/viewforum.php?f=16
-
Architect_414: hum, of course you had to add some code to the 6-7 lines of init/reset I pasted here. But these X lines should work on their own. They won't do much but they should not crash.
slippy: ;)
-
Architect_414: hum, of course you had to add some code to the 6-7 lines of init/reset I pasted here. But these X lines should work on their own. They won't do much but they should not crash.
Ah, well now what im getting is "Array Not Dimensioned" so ill go about adding some other code, sorry for being a pain, but what kind of things shall i add? ???
Slippy:Ive been a part of that forum for quite a long time ;)
-
Hmm, well thought not to post another topic since its still GFA language ;)
But could someone kindly help me optimise a little bit of code?
I ported it across from Qbasic, its a simple scroller, but the problem is, as it leaves the right border and comes back in the left, it comes in a line lower, jams for about 2 seconds, then shoots back up onto the original line. :'(
%a=0
Do
IF a% = 50 Then
a% = 0
ENDIF
CLS
Locate a%,10
PRINT Scrolly Text
a% = a% + 1
Loop Until INKEY$ = CHR$(27)
-
I can't run this but I can see what is happening.
The word is wrapping around to the next line because you've gone off the edge of the display.
If you are going to make a scrolling text routine you'd be better off looking to see if you have a MID command so that you can chop a portion of a string out and draw that in the same location all the time. You'll also want a LEN command too to find the length of the string.
Pseudo code;
Text = "THIS IS A STRING AND IT CONTAINS THE SCROLL TEXT"
OFFSET=0
LOOP START
CLS
LOCATE 0,20
PRINT MID (TEXT , OFFSET , 10)
OFFSET=OFFSET+1
IF OFFSET > (LENGTH(TEXT))-10 THEN OFFSET=0
LOOP END
Would Output something like;
THIS IS A ST
Dunno if that helps, I hope so though.
-
Hmm, i just tried that
It doesnt work :'(
Thankyou alot for trying to help though shockwave, i appreciate it.
-
It's the right approach though, I've never used GFA basic, but check and see if it has a mid command and a len command and go from there :)
-
It has a MID command
And ill check about the LEN command :)
Thanks!
-
Ah right shockwave! it does have a LEN and MID command.
Ill just show you what i want to get scrolling ;D
FOR i%=0 TO 50
PRINT AT(14,10);CHR$(27)+"b"+CHR$(i%)+"Scroller"
NEXT i%
Any ideas anyone how to get that scrolling either using the MID/LEN command or any other?
Many Thanks Again
//Architect.