1. OidZone and Crash Course update

Hi.  Sorry you haven't heard much from me in the last couple of months.
I've been helping out at my sisters company full time (50-60 hrs a week)
and consequently, haven't had enough oomph left in me to keep up the
rigorous writing schedule.  My time with them is over, and I'm gearing up
for the new year.  I'm knee deep building my new production facility,
which should be completed by Jan 1. Starting then, I will be back in the
OidZone and will be producing the next series of Crash Course lessons.  I
hope to get back to one per week on those before too long.

The new Studio will be cool.  We'll be able to do Digital Video AND Audio
(cd-quality, 3D sound), as well as the CGI stuff I normally do, along with
the game production.  I will also be able to keep my web site updated
weekly or better.  I will be doing more Euphoria trailblazing too, I
intend to put up at least one interesting thing for you to play with per
week.  Up till now my office space was so crowded, I had to put my
keyboard up on my monitor to have enough room to write a check!  Now I
can spread out a little and can do my work without having to jury-rig
all the hardware EVERY time I need to do something.

I'm planning to have 5 games released in the first quarter of 1997, mostly
arcade games using the OidZone Sprite Engine, then later we'll move into
cd-rom game production in house.  We'll have special Programmer's lessons
for each game for a nominal fee. ($40 for the first game pack (design
spec, theory, line by line explaination of every routine), then $20 for
each additional programmer game pack you get)

Things are looking bright.  At least I have a busy production schedule
starting Jan 1.

BTW if anyone can give me a more accurate way of determining elapsed time
in Euphoria (I need at least .01 second accuracy) I can make OZ run faster
on slower machines. (by dynamically changing the object speeds as the
frame rate changes)  No brainer solutions are preferable. (like make an
include file that does all it needs to and one Euphoria statement for me
to call to make it work. =)

Michael Packard
Lord Generic Productions
lgp at exo.com http://exo.com/~lgp
A Crash Course in Game Design and Production
http://exo.com/~lgp/euphoria

new topic     » topic index » view message » categorize

2. Re: OidZone and Crash Course update

Michael Packard writes:

> BTW if anyone can give me a more accurate way of determining elapsed time
> in Euphoria (I need at least .01 second accuracy) I can make OZ run faster
> on slower machines. (by dynamically changing the object speeds as the

The tick_rate(x) library routine has already been implemented for Euphoria
v1.5 for DOS. It lets you increase the DOS clock tick rate from 18.2/sec
to whatever you like, within reason. On a 486, tick_rate(100), i.e. 100 ticks
per second is no problem. On a fast Pentium, 1000 ticks per second is ok.
The Euphoria time() routine will then advance in smaller, more precise units.

I found that Peter Blue's Space Invaders game can be made to run much faster
when tick_rate is set higher and the main loop is timed at something less
than 1/18 second. Actually, on a Pentium-150 Space Invaders spends over 90%
of it's time in a while-loop, waiting for the 1/18 sec clock to advance.

Of course none of this does you any good until I release it. So I'm going
to put a kind of "experimental" alpha release of v1.5 on the Euphoria WEB page
early next week. I might only ZIP the necessary files, ex.exe, machine.e
and maybe a couple more.

In addition to tick_rate() you'll also get the new "with profile_time" feature
that lets you do time profiling of your code.
Some more features are in the works but you won't see them yet.

Since it's now obvious that a new release is coming fairly soon
(a few months away), effective today, any new person who registers for the
current shipping release (v1.4b) will be allowed a free download from the WEB
of the Euphoria Complete Edition v1.5 for DOS when it's finalized.

Some people have asked about the upcoming Windows (WIN32) version.
It's not meant to supercede the DOS version. It will run using the
the WIN32 API (Application Programmers Interface) that is supported
by Windows 95 and Windows NT. It will not require DOS or any DOS extender.
It will initially be rather primitive.

It will let you call 32-bit C routines in .DLL files, in particular
you will be able to call WIN32 API routines (which exist in .DLL files on
every Windows 95 or NT machine). For example, in the
WIN32 API, one of the over 1000 C subroutines is called PlaySound().
PlaySound() will play a .WAV sound file with various useful options.
You'll be able to call this routine
from your Euphoria program. (.WAV can be done now in the DOS version too,
thanks to Jacques efforts). There are lots of other useful routines
like that. The details of all this will be worked out over time as the
product evolves. The DOS version will
remain the "main" version of Euphoria for the forseeable future and will
continue to be enhanced. Currently
the 2 versions share most of their code. The core language and most
of the library routines are the same.
The Windows version can currently execute any plain text-mode Euphoria program
(such as ed.ex, search.ex, lw.ex) in a "console" text window, exactly emulating
the DOS version. You can run these programs from the command-line just as with
the DOS version. This was a useful first step to prove that all the
DOS-dependencies in Euphoria could be isolated and emulated where-possible
using WIN32 calls. Pixel graphics, Windows GUI support, and more will be
added in the future.

-- Rob Craig
   Rapid Deployment Software

new topic     » goto parent     » topic index » view message » categorize

3. Re: OidZone and Crash Course update

Michael Packard writes:

> great, will I be able to bind the alpha 1.5 stuff with OidZone, since it
> is scheduled for release jan 15?  What will be the tick resolution on a
> 486-33?  I need to speed oz up on those systems at least.  I think 1/100
> would be optimal, but anything is better than 1/20.

Sure, you can bind with alpha 1.5. It should be pretty stable.

I just tried Peter Blue's Space Invaders at 5000 ticks/sec on a 486 DX-50,
and things ran fine under DOS 6.2 or Win 3.1.
Then I changed it to 50000/sec and the program ran correctly, but at an
*extremely* slow speed.

On a Pentium-150 running in a Windows 95 MS-DOS window a
warning popped up from the operating system when I tried 1200/sec.
The warning box suggested that this program would run better from
the "pure MS-DOS" mode and offered to make a special desktop icon for me,
although I hadn't noticed any performance problems.
When I clicked "No", it let the program go ahead at 1200/sec,
and didn't bother me anymore while I was using that MS-DOS window --
even when I cranked it up to 5000/sec. At 5000 the performance was kind of
sluggish. At 1000/sec I've never seen this warning and the performance is fine.

So the short answer is: 100/sec on a 486, and presumably even a 386,
should be just fine.

Regards,
   Rob Craig
   Rapid Deployment Software

new topic     » goto parent     » topic index » view message » categorize

4. Re: OidZone and Crash Course update

>I just tried Peter Blue's Space Invaders at 5000 ticks/sec on a 486 DX-50,
>and things ran fine under DOS 6.2 or Win 3.1.
>Then I changed it to 50000/sec and the program ran correctly, but at an
>*extremely* slow speed.

Some thing to do with sign extension after 32767?

--
For information on any of the following check out my WEB site at:
    //www.execpc.com/~bpaddock/ or http://www.usachoice.net/bpaddock
Chemical Free Air Conditioning/No CFC's, Chronic Pain Relief, Electromedicine,
Electronics, Explore!, Free Energy, Full Disclosure, KeelyNet, Matric Limited,
Neurophone, Oil City PA, Philadelphia Experiment.
:

new topic     » goto parent     » topic index » view message » categorize

5. Re: OidZone and Crash Course update

Michael Packard writes:
> cool.  When will it be available?

I expect to upload v1.5 alpha-1 Public Domain Edition to the
Official Euphoria page sometime on Tuesday. It will have the
tick_rate() and "with profile_time" features, plus a couple
of minor performance improvements. More features are planned for
later alpha/beta releases.

Regards,
  Rob Craig
  Rapid Deployment Software

new topic     » goto parent     » topic index » view message » categorize

6. Re: OidZone and Crash Course update

BP>---------------------- Information from the mail header --------------------
BP>Sender:       Euphoria Programming for MS-DOS <EUPHORIA at
MIAMIU.ACS.MUOHIO.ED
BP>Poster:       Bob Paddock <bpaddock at EXECPC.COM>
BP>Subject:      Re: OidZone and Crash Course update
BP>----------------------------------------------------------------------------

BP>>I just tried Peter Blue's Space Invaders at 5000 ticks/sec on a 486 DX-50,
BP>>and things ran fine under DOS 6.2 or Win 3.1.
BP>>Then I changed it to 50000/sec and the program ran correctly, but at an
BP>>*extremely* slow speed.

BP>Some thing to do with sign extension after 32767?

if the timer routine takes in signed argument values, then yes, it
could be. If you cast from unsigned int (0-65535) to a signed int
(-32768 --32767) the values higher than 32767 will not correspond (the
first bit of the number either means a sign or 32768) That is why 50000
turns into -17232.

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu