3D cube routine example ?
Moderators: simonsunnyboy, Mug UK, Zorro 2, Moderator Team
-
- Atari Super Hero
- Posts: 514
- Joined: Wed Jun 29, 2011 6:39 am
- Location: California / USA
- Contact:
Re: 3D cube routine example ?
@exxos : Any good 3D code will NOT use the MULx and DIVx instruction of the 68000 which is why you don't see a huge improvement.
@AtariZoll : executing it the way exxos shows doesn't have a lot of setup, you load the bin fine (relocatable dri linkable object code) and jump into it. So it you start counting just before the call instruction you get fairly accurate runtime (I trace the code that does the call and it doesn't do a lot before doing the jsr into my code).
Rodolphe
@AtariZoll : executing it the way exxos shows doesn't have a lot of setup, you load the bin fine (relocatable dri linkable object code) and jump into it. So it you start counting just before the call instruction you get fairly accurate runtime (I trace the code that does the call and it doesn't do a lot before doing the jsr into my code).
Rodolphe
Falcon + AB040 + Eclipse PCI + ATI Rage VGA card + NE2000 Ethernec + HxC Floppy Emulator
MegaSTE 4MB + CosmosEx / 1040 STF for hardware dev
http://www.rti-zone.org/atari.php
MegaSTE 4MB + CosmosEx / 1040 STF for hardware dev
http://www.rti-zone.org/atari.php
Re: 3D cube routine example ?
Since the application's name ist GEMBench (and not "DemoBench"
), I just hacked together this one:

VDI rotating cube
Re: 3D cube routine example ?
As I said, there is longer initialization before displaying of cube/thetraeder starts. Only reasonable way for accurate measuring is that called program/subrutine returns the result. That's elementary and supported by (T)OS .rpineau wrote: @AtariZoll : executing it the way exxos shows doesn't have a lot of setup, you load the bin fine (relocatable dri linkable object code) and jump into it. So it you start counting just before the call instruction you get fairly accurate runtime (I trace the code that does the call and it doesn't do a lot before doing the jsr into my code).
Rodolphe
Famous Schrodinger's cat hypothetical experiment says that cat is dead or alive until we open box and see condition of poor animal, which deserved better logic. Cat is always in some certain state - regardless from is observer able or not to see what the state is.
Re: 3D cube routine example ?
Nice :)maybe you could add a timer in there and loop it for 20 seconds or so and print the score after ? Then I could try it at 16mhz speeds, but don't think it would show any higher speeds than other VDI tests in gembenchmfro wrote:Since the application's name ist GEMBench (and not "DemoBench"), I just hacked together this one:

4MB STFM 1.44 FD- VELOCE+ 020 STE - Falcon 030 CT60 - Atari 2600 - Atari 7800 - Gigafile - SD Floppy Emulator - PeST - various clutter
http://www.exxoshost.co.uk/atari/ All my hardware guides - mods - games - STOS
http://www.exxoshost.co.uk/atari/last/storenew/ - All my hardware mods for sale - Please help support by making a purchase.
http://ataristeven.exxoshost.co.uk/Steem.htm Latest Steem Emulator
http://www.exxoshost.co.uk/atari/ All my hardware guides - mods - games - STOS
http://www.exxoshost.co.uk/atari/last/storenew/ - All my hardware mods for sale - Please help support by making a purchase.
http://ataristeven.exxoshost.co.uk/Steem.htm Latest Steem Emulator
Re: 3D cube routine example ?
Sure. The video above has been shot with Aranym, however, where VDI drawing is virtually free (because of Natfeats). Firebee speed is comparable.exxos wrote:Nice :)maybe you could add a timer in there and loop it for 20 seconds or so and print the score after ?mfro wrote:Since the application's name ist GEMBench (and not "DemoBench"), I just hacked together this one:
With Hatari (which comes pretty close to a Falcon speedwise) it's like that:
spinning VDI cube
(about a second per frame)Re: 3D cube routine example ?
Cool - can you post your program so I can try it out on my ST's here ?
4MB STFM 1.44 FD- VELOCE+ 020 STE - Falcon 030 CT60 - Atari 2600 - Atari 7800 - Gigafile - SD Floppy Emulator - PeST - various clutter
http://www.exxoshost.co.uk/atari/ All my hardware guides - mods - games - STOS
http://www.exxoshost.co.uk/atari/last/storenew/ - All my hardware mods for sale - Please help support by making a purchase.
http://ataristeven.exxoshost.co.uk/Steem.htm Latest Steem Emulator
http://www.exxoshost.co.uk/atari/ All my hardware guides - mods - games - STOS
http://www.exxoshost.co.uk/atari/last/storenew/ - All my hardware mods for sale - Please help support by making a purchase.
http://ataristeven.exxoshost.co.uk/Steem.htm Latest Steem Emulator
Re: 3D cube routine example ?
Sure.
I'd assume it will be nice to your speeder since it's using ROM routines for drawing and very "straightforward" (just to avoid the word stupid) projection code.
I'd assume it will be nice to your speeder since it's using ROM routines for drawing and very "straightforward" (just to avoid the word stupid) projection code.
You do not have the required permissions to view the files attached to this post.
Re: 3D cube routine example ?
355ms 8mhz ST
255ms 16mhz ST
So about 40% faster on a 16mhz ST. That is about what expected with ROM functions
btw- on my ST you app says "illegal AES function call" when it first loads, but seems to work ok after selecting the cube test
255ms 16mhz ST
So about 40% faster on a 16mhz ST. That is about what expected with ROM functions

btw- on my ST you app says "illegal AES function call" when it first loads, but seems to work ok after selecting the cube test

4MB STFM 1.44 FD- VELOCE+ 020 STE - Falcon 030 CT60 - Atari 2600 - Atari 7800 - Gigafile - SD Floppy Emulator - PeST - various clutter
http://www.exxoshost.co.uk/atari/ All my hardware guides - mods - games - STOS
http://www.exxoshost.co.uk/atari/last/storenew/ - All my hardware mods for sale - Please help support by making a purchase.
http://ataristeven.exxoshost.co.uk/Steem.htm Latest Steem Emulator
http://www.exxoshost.co.uk/atari/ All my hardware guides - mods - games - STOS
http://www.exxoshost.co.uk/atari/last/storenew/ - All my hardware mods for sale - Please help support by making a purchase.
http://ataristeven.exxoshost.co.uk/Steem.htm Latest Steem Emulator
Re: 3D cube routine example ?
Known issue.exxos wrote: btw- on my ST you app says "illegal AES function call" when it first loads, but seems to work ok after selecting the cube test
I use the same code as testbed for AES 3.40 popup menus so there are calls that a plain ST doesn't understand. There should be no harm besides the alert message.
Re: 3D cube routine example ?
Can anyone shed any light on doing underline in button text ?
On the left is the GB window as it loads form RSC file. For example GEM Dialog Box on the actual GB screen (on right) as the "D" underlined. But in the RSC file (and when I loaded the form) it says "[D" . So I assume in the HGK somewhere it looks for the "[" bracket and makes the letter after it a underlined letter.
I know there is VST Effects, but I only got that to do full line in that effect. I assume at some point the button text gets redone somehow, but no idea how. I'm trying to backtrack the GB code, but there are so many jumps in the code all over the place that its hard to actually work out whats going on. Really this is the only hold up I have so far in making progress with GB6
On the left is the GB window as it loads form RSC file. For example GEM Dialog Box on the actual GB screen (on right) as the "D" underlined. But in the RSC file (and when I loaded the form) it says "[D" . So I assume in the HGK somewhere it looks for the "[" bracket and makes the letter after it a underlined letter.
I know there is VST Effects, but I only got that to do full line in that effect. I assume at some point the button text gets redone somehow, but no idea how. I'm trying to backtrack the GB code, but there are so many jumps in the code all over the place that its hard to actually work out whats going on. Really this is the only hold up I have so far in making progress with GB6

You do not have the required permissions to view the files attached to this post.
4MB STFM 1.44 FD- VELOCE+ 020 STE - Falcon 030 CT60 - Atari 2600 - Atari 7800 - Gigafile - SD Floppy Emulator - PeST - various clutter
http://www.exxoshost.co.uk/atari/ All my hardware guides - mods - games - STOS
http://www.exxoshost.co.uk/atari/last/storenew/ - All my hardware mods for sale - Please help support by making a purchase.
http://ataristeven.exxoshost.co.uk/Steem.htm Latest Steem Emulator
http://www.exxoshost.co.uk/atari/ All my hardware guides - mods - games - STOS
http://www.exxoshost.co.uk/atari/last/storenew/ - All my hardware mods for sale - Please help support by making a purchase.
http://ataristeven.exxoshost.co.uk/Steem.htm Latest Steem Emulator
Re: 3D cube routine example ?
With standard AES, this is only possible using USERDEFs.
These are AES objects that call back a user defined routine which is supposed to draw the UI element using VDI functions.
A string with a single underlined character, for example, could be drawn using v_gtext() to draw the string, vqt_extend() to obtain the position of the underlined character and v_pline() to draw the underline.
These are AES objects that call back a user defined routine which is supposed to draw the UI element using VDI functions.
A string with a single underlined character, for example, could be drawn using v_gtext() to draw the string, vqt_extend() to obtain the position of the underlined character and v_pline() to draw the underline.
Re: 3D cube routine example ?
You can use tables of precalculated transcendentals and use fixed point arithmetic and it's all integer instructions (no FPU needed).AtariZoll wrote:In case of Ataris (and other oldies) without FPU integer divisions are avoided, even if there is such CPU command, because slowness. Instead it tables with precalculated results are used.