32 BIT FORTH FOR P/C WITH SOUND 
Author Message
 32 BIT FORTH FOR P/C WITH SOUND

Anyone know of a freeware forth that has SB16 support.



Fri, 02 Mar 2001 03:00:00 GMT  
 32 BIT FORTH FOR P/C WITH SOUND

Quote:
> Anyone know of a freeware forth that has SB16 support.

Too short. Which OS?

-marcel



Fri, 02 Mar 2001 03:00:00 GMT  
 32 BIT FORTH FOR P/C WITH SOUND
marcel,
I am doing some robotics work in forth with a 486 connected to stepper motors
via the parallel port.
I  need low level voice input and output via sb16 board (i need to concatenate
sounds in
my forth dictionary)
I have writen an 8 bit mono driver but
the sound quality is poor.
I need 16 bit quality but that requires interrupt
 and dma handling.
My knowledge of the pc is limited.
I am using forth32 by Rick VanNorman.
There are some DPMI interrupt examples but
nothing as detailed as a hardware driver.
Can you help?



Sat, 03 Mar 2001 03:00:00 GMT  
 32 BIT FORTH FOR P/C WITH SOUND

Quote:

> My knowledge of the pc is limited.
> I am using forth32 by Rick VanNorman.
> There are some DPMI interrupt examples but
> nothing as detailed as a hardware driver.
> Can you help?

Maybe I can. Why don't you install Linux on that machine?There is a byte-by-byte
access function in the parallel port driver so controlling the steppers is the
same.

Playing sounds is quite easy in Linux. The most simple solution is to take a
program that plays audio files and run it with the filename of the sound:
S" showaudio breeeeee.wav" system

If you are looking for a Linux Forth: My recommendations are gforth and FLK (look
at my home page.)

Hope this helps.

--
Lars Krueger
URL: http://www.rz.tu-ilmenau.de/~ai108



Sun, 04 Mar 2001 03:00:00 GMT  
 32 BIT FORTH FOR P/C WITH SOUND

Quote:
> I  need low level voice input and output via sb16 board (i need to
> concatenate sounds in my forth dictionary) I have writen an 8 bit
> mono driver but the sound quality is poor.
> I need 16 bit quality but that requires interrupt and dma handling.
> My knowledge of the pc is limited.
> I am using forth32 by Rick VanNorman.
> There are some DPMI interrupt examples but nothing as detailed as a
> hardware driver.
> Can you help?

I can not help with Forth32. However, Rick VanNorman seems to lurk here,
so all is not lost yet.

With DPMI, you must be using a third-party memory manager + DOS. Switch
to Windows 95 and use its build-in DPMI. Then get Win32Forth. This Forth
allows you to call Windows DLLs, solving the soundcard problem for ever.
You get back a problem with accessing the parallel port (but many people
here solved that with two small CODE words).

What I did for the DOS iForth is write a small resident program in C
that includes the soundcard's library functions (at least the ProAudio
card has a free development kit with everything you will ever need).
You can define a simple jumptable in C to give Forth32 access to the
core routines. Chances are this interface can be extremely simple.
You can learn a lot from this experience, but I suggest to try the
other solutions first.

If you follow the suggested Linux road, make sure your Soundblaster
is NOT Plug&Play (or has Linux solved this problem in the current
production kernel?)

-marcel



Sun, 04 Mar 2001 03:00:00 GMT  
 32 BIT FORTH FOR P/C WITH SOUND
I have generated 16-bit sounds in memory, then played them by calling
PlaySound, in Win32Forth. To do this, I put WinLibrary winmm.dll before the
anew statement.

phma



Sun, 04 Mar 2001 03:00:00 GMT  
 32 BIT FORTH FOR P/C WITH SOUND
This method, of placing the WinLibrary statment before the ANEW statment
works
fine in Win32Forth, because 'WinLibrary' doesn't load the requested DLL
if it has
already been loaded.

Tom Zimmer

Quote:

> I have generated 16-bit sounds in memory, then played them by calling
> PlaySound, in Win32Forth. To do this, I put WinLibrary winmm.dll
> before the
> anew statement.

> phma



Mon, 05 Mar 2001 03:00:00 GMT  
 32 BIT FORTH FOR P/C WITH SOUND


Quote:
>I can not help with Forth32. However, Rick VanNorman seems to lurk here, so
>all is not lost yet.

If I remember correctly, Forth32 is for use under OS/2.

Quote:
>With DPMI, you must be using a third-party memory manager + DOS. Switch  to
>Windows 95 and use its build-in DPMI. Then get Win32Forth. This Forth
>allows you to call Windows DLLs, solving the soundcard problem for ever.
>You get back a problem with accessing the parallel port (but many people
>here solved that with two small CODE words).

So the above solution of using Windows95 is probably not what is wanted.
OS/2 has very good DPMI capabilities, and of course its own OS/2
capabilities.  Now consider, perhaps the individual is not using OS/2, but
instead the DOS RSX extender, which is similar to the OS/2 extender emx.
So, using rsx to enable emx, means you are working in a DOS DPMI
environment.  So perhaps, this individual wants to develope for DOS.

As a user of a non-mainstream operating system (OS/2) I find it rather
annoying when others tell me that all my problems can be solved by simply
getting XYZ, which of course requires Windows 95/98.  I don't want Windows.
The people suggesting Linux annoy me less, but I still find it somewhat
presumptuous to suggest massive changes to system software (which often
include changes to hardware) as a solution to a problem.

--

I was there at the birth of ClickWare...
--------------------------------------------------------------

Check out DefTool for AWE:
<http://www.olywa.net/kb7nmu/awe/>

--------------------------------------------------------------

Resident.  As such it is Illegal to send certain types of Unsolicited
Commercial Email to this account.  Please see
http://www.wa.gov/ago/junkemail  for more details.
--------------------------------------------------------------



Mon, 05 Mar 2001 03:00:00 GMT  
 32 BIT FORTH FOR P/C WITH SOUND

Quote:


>>I can not help with Forth32. However, Rick VanNorman seems to lurk here, so
>>all is not lost yet.
> If I remember correctly, Forth32 is for use under OS/2.

From the FAQ (my local copy of it):

  Blue Star Systems; Mike Warot;
     PO Box 4043; Hammond, IN  46324; USA
     Forth/2   ;  

     A direct threaded implementation of forth for OS/2 text mode, 32 bit

The only other OS/2 Forth listed is Gforth. (I may have an old FAQ)
I can't find the FAQ listing for Forth32, but I distinctly remember
Rick VanNorman being mentioned with it.

[ advise to switch to Win95 and use Win32Forth ]

Quote:
> So the above solution of using Windows95 is probably not what is wanted.
> OS/2 has very good DPMI capabilities, and of course its own OS/2
> capabilities.  Now consider, perhaps the individual is not using OS/2, but
> instead the DOS RSX extender, which is similar to the OS/2 extender emx.
> So, using rsx to enable emx, means you are working in a DOS DPMI
> environment.  So perhaps, this individual wants to develope for DOS.

He said he didn't know much about the PC. So I assumed he didn't care
what he developed on (I specifically asked what OS he was using).
Besides, Win32Forth also works under OS/2 (or worked?)

Quote:
> As a user of a non-mainstream operating system (OS/2) I find it rather
> annoying when others tell me that all my problems can be solved by simply
> getting XYZ, which of course requires Windows 95/98.  I don't want Windows.

I sense that toes have been growing awfully long lately, or maybe it's just
my feet getting larger and larger.

Quote:
> The people suggesting Linux annoy me less, but I still find it somewhat
> presumptuous to suggest massive changes to system software (which often
> include changes to hardware) as a solution to a problem.

Maybe the Forth you are using with OS/2 might make a good suggestion
for danielemc2?

-marcel



Mon, 05 Mar 2001 03:00:00 GMT  
 32 BIT FORTH FOR P/C WITH SOUND


Quote:

>WITH SOUND


>>>I can not help with Forth32. However, Rick VanNorman seems to lurk here, so
>>>all is not lost yet.
>> If I remember correctly, Forth32 is for use under OS/2.
>From the FAQ (my local copy of it):
>  Blue Star Systems; Mike Warot;
>     PO Box 4043; Hammond, IN  46324; USA
>     Forth/2   ;  

>     A direct threaded implementation of forth for OS/2 text mode, 32 bit
>The only other OS/2 Forth listed is Gforth. (I may have an old FAQ) I can't
>find the FAQ listing for Forth32, but I distinctly remember  Rick VanNorman
>being mentioned with it.

Actually, I think I have a number of different forths laying about here for OS/2, including the later mentioned partial port of Win32Forth for OS/2.  I have Rick VanNorman's, and also Mike Warot's.  Mike's forth is no longer in development.

Quote:
>[ advise to switch to Win95 and use Win32Forth ]
>I sense that toes have been growing awfully long lately, or maybe it's just
>my feet getting larger and larger.

Okay, I admit it.  I've been slightly annoyed by others, in other groups, who seem to think the entire world runs on MS Internet Explorer for Win98.  Nothing to do with forth.

Quote:
>Maybe the Forth you are using with OS/2 might make a good suggestion  for
>danielemc2?

Currently, I'm not using any forths.  Sad, but true.  If I were to use a forth, it would probably be Rick VanNorman's, as it appears that it has the best OS/2 support.

So why am I here?  Because, comp.lang.forth is the only group I've found with intelligent people intelligently discussing computers and programming.  Though all individuals do not always meet both qualifications, including myself.

Quote:
>-marcel

--

I was there at the birth of ClickWare...
--------------------------------------------------------------

Check out DefTool for AWE:
<http://www.olywa.net/kb7nmu/awe/>

--------------------------------------------------------------

Resident.  As such it is Illegal to send certain types of Unsolicited
Commercial Email to this account.  Please see
http://www.wa.gov/ago/junkemail  for more details.
--------------------------------------------------------------



Tue, 06 Mar 2001 03:00:00 GMT  
 32 BIT FORTH FOR P/C WITH SOUND

Thanks for the replies.
The reason for using such a dumb O/S like DOS is because I can't find a FORTH
for
the P/C that is stand alone and running in a
flat memory model.
Yes, of course I could take the BGates approach and throw more hardware and
software at the problem but that doesn't
solve my size constraint.
The end product must be very small, fast, and consume little power.
Here is a description of Phase I of my project so far:     (jpegs upon request)
I have used a full size human skeleton replica for the body.
The body doesn't move but the head turns and the jaw moves.
My FORTH words can create new primative dictionry sounds when in learn mode.
(currently working in a polling 8 bit mode)
I can concatinate the sounds to create
English words.
(works but has poor sound quality)
Each word has programmed movements
for the stepper motors controlling the jaw
and neck.
While the stepper controls don't require
much CPU power or memory, the sound
engine does.
Windows is too bloated!
OS2 is too bloated!
Linux is too bloated!

I need an O/S that is small and yet can grow
as it learns.

I need full hardware control of the motherboard and I/O devices.
This includes interrupt and DMA processing.

I've been programming for 20 years.  I used
FORTH on my LSI-11 in 1979 .
It was stand-alone and gave me full control of  the machine.
Is the PCs hardware scheme so complex that nobody has yet written a stand alone
FORTH
with full control of the machine and the typical  i/o cards that it uses ?

Phase I controls the head via a desktop computers, but mobility is the ultimate
goal.
I'd like to shink down the hardware to fit
 in the skeletal chest.



Sun, 11 Mar 2001 03:00:00 GMT  
 32 BIT FORTH FOR P/C WITH SOUND


Quote:

> Thanks for the replies.
> The reason for using such a dumb O/S like DOS is because I can't find a FORTH
> for
> the P/C that is stand alone and running in a
> flat memory model.
> Yes, of course I could take the BGates approach and throw more hardware and
> software at the problem but that doesn't
> solve my size constraint.
> The end product must be very small, fast, and consume little power.
> Here is a description of Phase I of my project so far:     (jpegs upon request)
> I have used a full size human skeleton replica for the body.
> The body doesn't move but the head turns and the jaw moves.
> My FORTH words can create new primative dictionry sounds when in learn mode.
> (currently working in a polling 8 bit mode)
> I can concatinate the sounds to create
> English words.
> (works but has poor sound quality)
> Each word has programmed movements
> for the stepper motors controlling the jaw
> and neck.
> While the stepper controls don't require
> much CPU power or memory, the sound
> engine does.
> Windows is too bloated!
> OS2 is too bloated!
> Linux is too bloated!

> I need an O/S that is small and yet can grow
> as it learns.

> I need full hardware control of the motherboard and I/O devices.
> This includes interrupt and DMA processing.

> I've been programming for 20 years.  I used
> FORTH on my LSI-11 in 1979 .
> It was stand-alone and gave me full control of  the machine.
> Is the PCs hardware scheme so complex that nobody has yet written a stand
> alone FORTH with full control of the machine and the typical  i/o cards that
> it uses ?  
> Phase I controls the head via a desktop computers, but mobility is the
> ultimate goal.
> I'd like to shink down the hardware to fit
>  in the skeletal chest.

If ever there was an application that should be done with multiple small
processors this is it. Use one processor (with reasonable power) to run
the speech and separate processors to control each stepper motor. Put out
a command-timing code on the comms bus and programme each motion to follow
the time-code with the appropriate activity. All processor could run a
native Forth implementation and you get very good control with no worries
about an OS for which you have no source. There are plenty of simple, small
boards out there (maybe even a handfull of PIC's might do it).

--

Transport Control Technology Ltd.   <http://www.tcontec.demon.co.uk/>

Going Forth Safely



Sun, 11 Mar 2001 03:00:00 GMT  
 32 BIT FORTH FOR P/C WITH SOUND

Quote:

> Thanks for the replies.
> The reason for using such a dumb O/S like DOS is because I can't find
> a FORTH
> for
> the P/C that is stand alone and running in a
> flat memory model.
> Yes, of course I could take the BGates approach and throw more
> hardware and
> software at the problem but that doesn't
> solve my size constraint.
> The end product must be very small, fast, and consume little power.
> Here is a description of Phase I of my project so far:     (jpegs upon
> request)
> I have used a full size human skeleton replica for the body.
> The body doesn't move but the head turns and the jaw moves.
> My FORTH words can create new primative dictionry sounds when in learn
> mode.
> (currently working in a polling 8 bit mode)
> I can concatinate the sounds to create
> English words.
> (works but has poor sound quality)
> Each word has programmed movements
> for the stepper motors controlling the jaw
> and neck.
> While the stepper controls don't require
> much CPU power or memory, the sound
> engine does.
> Windows is too bloated!
> OS2 is too bloated!
> Linux is too bloated!

> I need an O/S that is small and yet can grow
> as it learns.

> I need full hardware control of the motherboard and I/O devices.
> This includes interrupt and DMA processing.

> I've been programming for 20 years.  I used FORTH on my LSI-11 in 1979 .
> It was stand-alone and gave me full control of  the machine.
> Is the PCs hardware scheme so complex that nobody has yet written a
> stand alone FORTH
> with full control of the machine and the typical  i/o cards that it uses ?

> Phase I controls the head via a desktop computers, but mobility is the
> ultimate goal.
> I'd like to shink down the hardware to fit  in the skeletal chest.

You're describing a classical embedded system.  You obviously don't want
or need a "full PC" running DOS or anything else.  Our chipFORTH
cross-compiler
product line supports the 80186/8 family if you really love that
architecture, but there are a lot of other processors you could use,
such as the 68HC12 or even an 8051.  We support these using our SwiftX
(Windows-hosted) cross compilers.  The target in any of these
environments would be totally standalone, and quite small (no compiler,
dictionary, etc.).

There are relatively inexpensive boards available with Forth on them.
The
Forths tend to be somewhat limited and the development environments more
primitive, but if your budget is tight, it may be a good option.  See
the Forth
FAQ for some vendors.

Cheers,
Elizabeth

--
===============================================
Elizabeth D. Rather  (US & Canada) 800-55-FORTH
FORTH Inc.                      +1 310-372-8493
111 N. Sepulveda Blvd.     Fax: +1 310-318-7130
Manhattan Beach, CA 90266
http://www.forth.com

"Forth-based products and Services for real-time
applications since 1973."
===============================================



Sun, 11 Mar 2001 03:00:00 GMT  
 32 BIT FORTH FOR P/C WITH SOUND

Quote:

> Thanks for the replies.
> The reason for using such a dumb O/S like DOS is because I can't find
> a FORTH
> for
> the P/C that is stand alone and running in a
> flat memory model.

[remainder cut]

I haven't been following this thread carefully, and I suppose someone
has
already suffested F-PC, but from your description it appears to me that
it would work for your application just fine for the following reasons;

1. Relatively small by current OS standards.
2. Runs under DOS, and has run in battery operated DOS computers
before, with relatively limited hardware. 256k I think.
3. Doesn't use a flat model, but a segmented 16 bit model that allows
easy
expansion of the program to several hundred kilobytes, without your
program having to know about the segmentation.
4. Includes some 32 bit math support, and fast floating point support.
5. There is documentation available.
6. There are a lot of F-PC experts in this news group, many of which
have implemented real world applications.
7. It's free, and the source comes with it.
8. Uses text file for source, so you can use your favorite editor.
9. Has direct access the the hardware.
10. Includes memory management words for large arrays and data
structures.
11. Includes a built in MASM (similar) syntax assembler.
12. Fully meta-compilable system, if you REALLY need to reduce your
memory requirements to a minimum. No documentation on this though.

I syspect the most problematic part of the above might be the segmented
architecture.  As one of the implementers, I can tell you that it was
specifically
designed to make programs written for a non-segmented model as easy to
port
as possible.  Basically the threaded lists are placed outside the data
segment,
and the heads are placed outside the data segment.  All user data is
placed in
the data segment, unless you explicitly put it somewhere else.

I hope this helps,

Tom Zimmer



Sun, 11 Mar 2001 03:00:00 GMT  
 32 BIT FORTH FOR P/C WITH SOUND

Quote:

> > Here is a description of Phase I of my project so far:     (jpegs upon
request)
> > I have used a full size human skeleton replica for the body.
> > The body doesn't move but the head turns and the jaw moves.
> > My FORTH words can create new primative dictionry sounds when in learn
mode.
> > (currently working in a polling 8 bit mode)
> > I can concatinate the sounds to create English words.
> > (works but has poor sound quality)
> > Each word has programmed movements
> > for the stepper motors controlling the jaw and neck.
> > While the stepper controls don't require
> > much CPU power or memory, the sound engine does.
> > Windows is too bloated!
> > OS2 is too bloated!
> > Linux is too bloated!

> > I need an O/S that is small and yet can grow  as it learns.

> > I need full hardware control of the motherboard and I/O devices.
> > This includes interrupt and DMA processing.

> > I've been programming for 20 years.  I used
> > FORTH on my LSI-11 in 1979 .
> > It was stand-alone and gave me full control of  the machine.
> > Is the PCs hardware scheme so complex that nobody has yet written a
stand
> > alone FORTH with full control of the machine and the typical  i/o cards
that
> > it uses ?  

Yes, I believe that is the case.  There is also some question of whether
there would be an adequate market for such a machine. While the prices on
general purpose PC boxes keep coming down, the demand for a
Forth-controlled PC seems pretty limited.  As Paul Bennett suggests herein,
there is much to be said for avoiding the general purpose computer approach
entirely in certain applications.

Quote:
> > Phase I controls the head via a desktop computers, but mobility is the
> > ultimate goal. I'd like to shink down the hardware to fit in the

skeletal chest.

That sounds like you are heading toward a general purpose robot/android.
Quite an ambitious project, but you seem to have bitten off a fairly small
piece for phase 1.

Quote:
> If ever there was an application that should be done with multiple small
> processors this is it. Use one processor (with reasonable power) to run
> the speech and separate processors to control each stepper motor.

Yes, that sounds good.  It so happens that New Micros produces some
suitable Single Board Computers for such an application.  Our developer's
package with MaxForth and an F68HC11 SBC might be appropriate.  More on the
board itself at http://www.newmicros.com/txx22p.html

We also have a servo motor driver board described at
http://www.newmicros.com/txs7056.html

Quote:
> Put out
> a command-timing code on the comms bus and programme each motion to
follow
> the time-code with the appropriate activity.

For real time applications, you might want to try an approach using ISO-Max
http://www.newmicros.com/isomax.html
It gives some unique opportunities for fault tolerance and
multi-processing, and also permits some code to be compiled into the
hardware.  By separating state information from the CPU's Program Counter
Register, it may be possible to incorporate some limited AI or expert
systems techniques.

Quote:
> All processor could run a
> native Forth implementation and you get very good control with no worries
> about an OS for which you have no source. There are plenty of simple,
small
> boards out there (maybe even a handfull of PIC's might do it).

It sure sounds like a good case for SBCs can be made in this application.
While DOS is notably compact compared to Windoze, it has some other
limitations that are painful to bear.  Other than running your software on
a general purpose PC, what benefit does DOS provide to you?

Quote:

> Transport Control Technology Ltd.   <http://www.tcontec.demon.co.uk/>

> Going Forth Safely

In the words of Harold Lloyd, "Safety Last!" <grin>

Sincerely,

Gen. New Micros
http://www.newmicros.com/



Tue, 13 Mar 2001 03:00:00 GMT  
 
 [ 17 post ]  Go to page: [1] [2]

 Relevant Pages 

1. Division 32-Bit/32-Bit with 16-Bit Register

2. 32 bit standard forth, forth assembler, unreadability

3. 32 bit sound - CW4c

4. CLw 1.5 and sound in 32 bit

5. 32 bit Sound DLL??

6. 32 Bit Sounds?

7. Sound in asm 32 bit ?

8. Building 32 bit DLL from 32 bit EXE

9. 32 Bit ASM from 32 Bit Windows COBOL

10. 32 Bit ASM from 32 Bit Windows COBOL

11. Calling 32-bit FORTRAN dlls from 32-bit VB

12. top 32 bits of 64-bit product of two 32-bit integers

 

 
Powered by phpBB® Forum Software