Just nu i M3-nätverket
Gå till innehåll

Basicfiler


MariaE

Rekommendera Poster

Hur får man gamla basicfiler att funka i en ny dator? Jag laddade ner ett basicprogram men filerna gick inte att kompilera :-(

Jag kan inte basic men jag vet at det finns olika basicdialekter. Jag hittade några basicfiler som jag fick 1993 nångång från en datakurs som jag gick då. Det är grafikfiler. Jag har Windows 7 ultimate i denna dator. Jag kanske ska testa filerna i datorn som jag har Windoes 3.1 och dos6.0 i också. Om nu den datorn funkar fortfarande... lagren i hårddisken kanske har börjat ändra form...

/Maria

Länk till kommentar
Dela på andra webbplatser

Mr Andersson

Du måste sannolikt kompilera dem med samma basic-program som de en gång skrevs i.

 

Jag tror inte att programmet snurrar i Win7 helt utan vidare, så det är bättre att testa på dina äldre win/dos-maskiner.

 

Om du visar lite kod kanske jag kan hjälpa dig med vilken "kompilator" det är.

Länk till kommentar
Dela på andra webbplatser

Hej här är lite kod till en basic fil. Den följde med som källfil till programmet firstbasic. Jag kom ihåg att detta program gick att använda under Windows 3.1. Jag kommer inte ihåg om jag det gick att använda under Windows 98. Windows 98 har ju äkta dos-läge. Dosbox fick jag inte att funka under Windows XP eller Windows 7 Ultimate.
/Maria
 

'ÚÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ¿
'³ BALL.BAS ³
'³ ³
'³ This program is a simple demonstration of the graphics capabilities ³
'³ of FirstBASIC. It displays a "bouncing ball" that uses random numbers ³
'³ to figure out which directions to bounce off to. ³
'³ ³
'³ In order to run this program do the following: ³
'³ 1. Load FirstBasic by typing FB at the DOS prompt. ³
'³ 2. Load the file BALL.BAS from the Load option of the File ³
'³ pulldown menu. ³
'³ 3. Compile and run the program by pressing F9. ³
'ÀÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÙ


' logic:
' draw the ball
' use GET to store pixels into an array
' set CurrentPosition = OldPosition = StartPoint
' DO
' Erase (PUT with XOR) the object at the OldPosition
' CurrentPosition = CurrentPosition + Increment
' Display (PUT) the object at the CurrentPosition
' DELAY a small amount of time
' OldPosition = CurrentPosition
' LOOP UNTIL any key is hit
' end of program
'
DEFINT A-Z
RANDOMIZE TIMER
'
' dimension the save buffer for the pixels
'
DIM GraphicsBuffer(1000)

SCREEN 1
'
' set screen min and max based on screen number
'
Max.X = 319 : Min.X = 0
Max.Y = 199 : Min.Y = 0
'
' set size of ball
'
SizeOfBall = 15
'
' set up the starting center position for the ball
'
Start.X = 15
Start.Y = 15
'
' build the ball on the screen
'
CIRCLE (Start.X,Start.Y),SizeOfBall,2
PAINT (Start.X,Start.Y),1,2
'
' store the pixels in a graphics save buffer
'
GET (Start.X-SizeOfBall,Start.Y-SizeOfBall)-(Start.X+SizeOfBall,Start.Y+SizeOfBall),GraphicsBuffer
'
' initialize the position of the ball
'
CurrentPosition.X = OldPosition.X = Start.X
CurrentPosition.Y = OldPosition.Y = Start.Y
'
' set current X direction to Right, Y direction to Down
'
Direction.X = 1
Direction.Y = 1

DO
'
' erase previous ball by doing a PUT at the old position
'
PUT (OldPosition.X,OldPosition.Y),GraphicsBuffer
'
' calculate new X position,
' if at right edge set direction to Left
' if at left edge set direction to right
' if ball hits an edge, make a sound
'
Increment.X = RND*8
IF CurrentPosition.X+Increment.X+30 > Max.X THEN Direction.X = -1 : sound 200+rnd*250,.5
IF CurrentPosition.X-Increment.X < Min.Y THEN Direction.X = 1 : sound 200+rnd*300,.5
CurrentPosition.X = CurrentPosition.X + (Increment.X*Direction.X)
'
' calculate new Y position,
' if at bottom edge set direction to the up
' if at top edge set direction to the down
' if ball hits an edge, make a sound
'
Increment.Y = RND*8
IF CurrentPosition.Y+Increment.Y+30 > Max.Y THEN Direction.Y = -1 : sound 200+rnd*275,.5
IF CurrentPosition.Y-Increment.Y < Min.Y THEN Direction.Y = 1 : sound 200+rnd*325,.5
CurrentPosition.Y = CurrentPosition.Y + (Increment.Y*Direction.Y)
'
' display the ball at the new position
'
PUT (CurrentPosition.X,CurrentPosition.Y),GraphicsBuffer
'
' wait some time for smoother animation
'
DELAY .03
'
' save current position so the ball can be erased before next move
'
OldPosition.X = CurrentPosition.X
OldPosition.Y = CurrentPosition.Y
'
' keep looping until any key is hit
'
LOOP UNTIL INSTAT
END
Länk till kommentar
Dela på andra webbplatser

Mr Andersson

Programmet använder som sagt grafikläge och jag tror inte du kan få det att fungera i något Windows efter 98/ME.

Länk till kommentar
Dela på andra webbplatser

Thomas Tydal

Du hittar kompilatorn här:

http://www.softlookup.com/display.asp?id=8554

 

Men den är för DOS. Har du DOS-disketterna kvar är det inga problem, bara att ladda ner gratisprogrammet Virtualbox och skapa en virtuell dos-maskin som du kan köra kompilatorn i.

 

Har du inte kvar DOS-disketterna blir det lite knepigare eftersom DOS inte säljs längre men upphovsrätten gäller ju ändå i 70 år efter Bill Gates död, så tekniskt sett är det en piratkopia om du googlar det rätt på det, även om du hade köpt DOS för länge sen...

 

I så fall kanske du kan prova FreeDOS i första hand:

http://www.freedos.org/

Länk till kommentar
Dela på andra webbplatser

  • 4 years later...

Det finns basic.program i Linux oxkså  men dessa filer har inte samma tillägg som basicfiler som är skapade i Qbasic eller GWbasic... Detta program verkar vara fel dessutom eftersom det är rött... Måste man ha radnummer också som i  Basic då jag började min allra första datakurs 1984? Då kördes basic under dos...

/Maria

post-120863-0-99286000-1455451600_thumb.png

Länk till kommentar
Dela på andra webbplatser

Du gillar tydligen att väcka upp flera år gamla trådar.

 

Det finns ett flertal äldre dialekter på GrundBasic, och det finns ett flertal nyare dialekter, och olika dialekter i Basic kan ha olika tecken, i äldre basic hade man ofta radnummer, i nyare dialekter från 1990 ca, så behövdes inte radnummer längre.

 

Här har du ett urval på olika Basic-dialekter

 

I början så körde man Basic i Dos, som var ett eget operativ, har kvar dessa disketter faktiskt.

 

Men idag så är det nog bara verkliga nördar som håller på med Basic, man måste ju ha en dator som kan fungera, troligast är att man får köra versionen som en virtuell enhet, precis som Tomas Tydal sa i inlägget ovan för dryga 5 år sedan.

Hur det ligger till med motsvarande "Lek" i linux, har jag ingen uppfattning om, leker inte med Linux på det sättet.

 

Så att hålla på med en massa "lek" nu med text och bild i denna tråd, kommer inte att leda till någonting, bara en massa onödiga inlägg, som inte tillför någonting.

Länk till kommentar
Dela på andra webbplatser

Du gillar tydligen att väcka upp flera år gamla trådar.

 

Det finns ett flertal äldre dialekter på GrundBasic, och det finns ett flertal nyare dialekter, och olika dialekter i Basic kan ha olika tecken, i äldre basic hade man ofta radnummer, i nyare dialekter från 1990 ca, så behövdes inte radnummer längre.

 

Här har du ett urval på olika Basic-dialekter

 

I början så körde man Basic i Dos, som var ett eget operativ, har kvar dessa disketter faktiskt.

 

Men idag så är det nog bara verkliga nördar som håller på med Basic, man måste ju ha en dator som kan fungera, troligast är att man får köra versionen som en virtuell enhet, precis som Tomas Tydal sa i inlägget ovan för dryga 5 år sedan.

Hur det ligger till med motsvarande "Lek" i linux, har jag ingen uppfattning om, leker inte med Linux på det sättet.

 

Så att hålla på med en massa "lek" nu med text och bild i denna tråd, kommer inte att leda till någonting, bara en massa onödiga inlägg, som inte tillför någonting.

Om jag ska göra några basicfiler eller testa som jag har gjort så använder jag min gamla dator som jag har Windows 98 på. Det finns en basic kompilator som heter Firstbasic. Det kan bara användas i Windows 98 tror jag. 

/Maria

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...