Login
Back to forumReply to this topicGo to last reply

Posted By

Litwr
on 2013-04-06
09:50:26
 Octasoft Basic 7.0

Are there programs for this Basic? I tried to use C128 program with sprites from the manual but it doesn't work.

5 color 0,1:color 4,1:color 1,2 : rem set colors
10 graphic 1,1 : rem set hi-res graphic mode
15 box 1,2,2,45,45 : rem picture frame
20 draw 1,17,10 to 28,10 to 26,30 : rem car body
22 drawto 19,30 to 17,10 : rem car body
24 box 1,11,10,15,18 : rem upper left wheel
26 box 1,30,10,34,18 : rem upper right wheel
28 box 1,11,20,15,28 : rem lower left wheel
30 box 1,30,20,34,28 : rem lower right wheel
32 draw 1,26,28 to 19,28 : rem grille
34 box 1,20,14,26,18,90,1 : rem car seat
36 box 1,150,35,195,40,90,1 : rem white lines
38 box 1,150,135,195,140,90,1 : rem white lines
40 box 1,150,215,195,220,90,1 : rem white lines
42 box 1,50,180,300,195 : rem finish outline
44 char 1,18,23,"finish" : rem display finish
45 sshape a$,11,10,34,30 : rem save picture into a$
50 sprsav a$,1 : rem store a$ in sprite 1
55 sprsav a$,2 : rem store a$ in sprite 2
60 sprite 1,1,7,0,0,0,0 : rem turn on sprite 1
65 sprite 2,1,3,0,0,0,0 : rem turn on sprite 2
70 movspr 1,240,70 : rem sprite 1 x=240, y=70
80 movspr 2,120,70 : rem sprite 2 x=120, y=70
85 movspr 1,180 #6 : rem mov spr 1 down screen
87 movspr 2,180 #7 : rem mov spr 2 down screen
90 for i=1 to 5000:next i
99 graphic 0,1

I used copy&paste feature of plus4emu to move this text into the emulator. This code makes an error at line 60. SPRITE command for Octasoft BASIC requires only 5 parameters. Could anybody help to translate to English this command description? Please... The scanned manual is at http://www.amiga.hu/amigos/plus4/plus4/basic7.htm.

Posted By

KiCHY
on 2013-04-06
12:03:33
 Re: Octasoft Basic 7.0

Based on the pdf document the possible parameters for SPRITE:
SPRITE CLR: clear sprites from screen
SPRITE OFF: turn off all sprites
SPRITE n,[akt],[pri],[mod],[sheet]
n: sprite number, 1-8
akt: 0: turn sprite off, 1: on
pri: priority, 1=behind background, 0=in foreground
mod: 0 = hires, 1 = multi
sheet: 0-255, on which sheet (page?) the sprite graphics defined.

Posted By

Litwr
on 2013-04-06
12:46:07
 Re: Octasoft Basic 7.0

Thank you very much! Could you give more detailed translation about *sheet* parameter. This thing is missed at C128 Basic. The program above works fine with Vice C128...I want to see the same movie with plus/4.
Please help to check
http://www.commodore.ca/manuals/128_system_guide/sect-17c.htm#17.59.html
with Octasoft MOVSPR command documentation. Is there difference at its "MOVSPR number,x angle #y speed" format?

Posted By

MMS
on 2013-04-06
13:15:25
 Re: Octasoft Basic 7.0

interesting, but after seeing octasoft, downloading the PDF and reading through the document (well, would not be a big deal for google translate), i thought it was a shame that they did not integrate a compiler to it to produce a self runnable fast (though big) PRG. it could have been the dream sw developing tool for less complicated programs on Plussy, including sprite, music player routine, etc. Just it is too slow being as it is, and was too rare and expensive to become wide spreaded (if i remember well it cost almost the same money as an oceanic floppy drive). Now it will be easy to just refer to attach it to ROM, and prg will run, though still not compatible with real iron. How much plus/4 would have been respected with such a Sw inside (softsprites+built in compiler), than 3+1, that also works only with floppy, but worth much less the 32K ROM, than this

Posted By

KiCHY
on 2013-04-06
13:41:50
 Re: Octasoft Basic 7.0

With RSBANK(n) where n=0..3 you can configure where the sprite sheets (the sprite images) are located:
0 = $0000-$3fff
1 = $4000-$7fff
2 = $8000-$bfff
3 = $c000-$ffff
In each bank there are 256 pieces of 64 bytes large sheets (a'la in c64, where you have to select a bank in VIC and you may select 0-255 sprite images which are 3*21 byte+1 garbage).

"MOVSPR n, x, y" : move the sprite #n (1-8) to x, y absolute coordinates.
"MOVSPR n, +/-deltax, +/-deltay" : move sprite #n by deltax, deltay pixels.
"MOVSPR n, l; angle" : move sprite moving to given l distance with direction of angle (0-360).
"MOVSPR n, speed # angle" : move sprite to given direction (angle 0-360) by given speed (0-15).

Posted By

Litwr
on 2013-04-06
13:58:18
 Re: Octasoft Basic 7.0

RSBANK is missed at PDF and caused syntax error.
I changed lines 60 and 65 to
60 sprite 1,1,0,0,0
65 sprite 2,1,0,0,0
This runs without errors but also without any movement.

Posted By

KiCHY
on 2013-04-06
14:35:53
 Re: Octasoft Basic 7.0

"PROJECT" command: updates sprites on screen.
Example:
100 SPRITE 1,1,,,100
110 MOVSPR 1,100,100
120 PROJECT

Posted By

Litwr
on 2013-04-06
15:10:37
 Re: Octasoft Basic 7.0

Thanks but it doesn't help. I tried to insert PROJECT with lines 82 and 88 - this changed nothing. What could number 100 in example of SPRITE command mean? I'm very curious how it is possible that so powerful tool was not noted at Hungarian magazines? Where're the articles with small examples of sprite graphics?

Posted By

KiCHY
on 2013-04-06
17:46:17
 Re: Octasoft Basic 7.0

I found some accurate info in Index forum that the sprites are visible in character mode only and its code is nearly the same as in Super Cobra and Walaki.

Posted By

Litwr
on 2013-04-06
23:49:05
 Re: Octasoft Basic 7.0

It is very odd lack of information. Super Cobra and Walaki are games in ML. How to apply this for usage sprites in BASIC? I added GRAPHIC0 with line 57. This causes the appearance of several standard PETSCII symbols at screen without animation.
[MMS] Do you know any compiler at ROM? I know only about one ROM BASIC semicompiler - http://en.wikipedia.org/wiki/Vilnius_BASIC.

Posted By

MMS
on 2013-05-08
19:14:00
 Re: Octasoft Basic 7.0

Vatera (Hungarian ebay)

Octasoft BASIC V7.0 auction on Vatera.hu

Posted By

Litwr
on 2013-05-09
11:26:59
 Re: Octasoft Basic 7.0

IMHO this Basic is Panama. happy It will be good if 10% of its features are working.
BTW Warsaw Basic for C64 is still without manual. I have curiosity about the best Basic for Commodores.

Posted By

siz
on 2013-05-10
02:26:32
 Re: Octasoft Basic 7.0

I'm seriously consider buying it from Vatera. My friend had it back then and I was using it for several weeks. It was awfully slow (at least the software sprites). But I need it in my collection. happy

Posted By

Litwr
on 2013-05-10
10:18:26
 Re: Octasoft Basic 7.0

I hope to see any example with a sprite. I spent several fruitless hours for this task.

Posted By

gc841
on 2013-05-12
07:45:24
 Re: Octasoft Basic 7.0

The sprites are visible in character mode if you change lines 60 & 65:

60 sprite 1,1,0,1,0
65 sprite 2,1,0,1,0

movspr n,angle #speed doesn't seem to work, but the other movspr commands work in character mode.

example:

85 for y=1 to 60
86 movspr 1, 2;180 : movspr 2, +0, +2 : project
87 next y

sprite 1 (right side) moves 2 pixels at 180 degrees.
sprite 2 moves 2 pixels in y direction.

Posted By

Litwr
on 2013-05-12
15:50:56
 Re: Octasoft Basic 7.0

It is surprise! The sprites can move fast. However there are bugs. Thank you very much.

Posted By

bszggg
on 2024-01-27
14:02:21
 Re: Octasoft Basic 7.0

Litwr

Better solution to use the DRIVE command

"DRIVE on" - After it works the "movspr 1,10#1" command too on a do loop
Otherway you can move the the sprite with the cursor keys with this "DRIVE 1,44,41,52,44" See the keymap in the PDF below the drive command. (page 9)

example:

10 TRAP 909
100 SCNCLR :REFRESH
119 SPRITE 1,1
120 MOVSPR 1,100, 100
130 SPEED 1,4,4
140 DRIVE 1,44,41,49,52
145 DRIVE ON : REM !! THIS IS MISSING FROM THE EXAMPLE !!
150 DO :PROJECT:LOOP
900 SPRITE CLR
1000 END

Other way, I updated the description on the octasoft chart page to a selectable searchable version of the PDF
You have to check the selected text because et is an automatic convert..

searchable selectable PDF

Posted By

Litwr
on 2024-02-09
01:30:34
 Re: Octasoft Basic 7.0

@bszggg Thank you. It is a pleasure to get an answer after 11 years. It is really fascinating that there was a so powerful Basic version for the +4!



Back to topReply to this topic


Copyright © Plus/4 World Team, 2001-2024. Support Plus/4 World on Patreon