Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.forth > #12671 > unrolled thread

post your solution to this problem

Started byquiet_lad <gavcomedy@gmail.com>
First post2012-06-03 14:33 -0700
Last post2012-06-08 10:15 -0700
Articles 20 on this page of 51 — 11 participants

Back to article view | Back to comp.lang.forth


Contents

  post your solution to this problem quiet_lad <gavcomedy@gmail.com> - 2012-06-03 14:33 -0700
    Re: post your solution to this problem "Rod Pemberton" <do_not_have@notemailntt.cmm> - 2012-06-03 20:59 -0400
      Re: post your solution to this problem quiet_lad <gavcomedy@gmail.com> - 2012-06-03 19:06 -0700
        Re: post your solution to this problem "Elizabeth D. Rather" <erather@forth.com> - 2012-06-03 18:27 -1000
      Re: post your solution to this problem quiet_lad <gavcomedy@gmail.com> - 2012-06-03 19:49 -0700
        Re: post your solution to this problem "Elizabeth D. Rather" <erather@forth.com> - 2012-06-03 18:28 -1000
          DSP question (software modem) Paul Rubin <no.email@nospam.invalid> - 2012-06-03 22:22 -0700
            Re: DSP question (software modem) Mark Wills <markrobertwills@yahoo.co.uk> - 2012-06-04 02:19 -0700
              Re: DSP question (software modem) Paul Rubin <no.email@nospam.invalid> - 2012-06-04 03:07 -0700
            Re: DSP question (software modem) Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-06-04 04:32 -0500
              Re: DSP question (software modem) Paul Rubin <no.email@nospam.invalid> - 2012-06-04 03:15 -0700
                Re: DSP question (software modem) Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-06-04 05:46 -0500
                  Re: DSP question (software modem) Paul Rubin <no.email@nospam.invalid> - 2012-06-04 12:16 -0700
                    Re: DSP question (software modem) Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-06-04 14:55 -0500
                      Re: DSP question (software modem) Paul Rubin <no.email@nospam.invalid> - 2012-06-04 13:32 -0700
                        Re: DSP question (software modem) Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-06-07 05:20 -0500
                          Re: DSP question (software modem) Paul Rubin <no.email@nospam.invalid> - 2012-06-07 10:01 -0700
                            Re: DSP question (software modem) quiet_lad <gavcomedy@gmail.com> - 2012-06-07 11:04 -0700
                            Re: DSP question (software modem) Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-06-07 17:21 -0500
                              Re: DSP question (software modem) Paul Rubin <no.email@nospam.invalid> - 2012-06-07 20:36 -0700
                                Re: DSP question (software modem) "Rod Pemberton" <do_not_have@notemailntt.cmm> - 2012-06-08 02:36 -0400
                                  Re: post your solution, and don't over write my thread, or I'll do something to Paul Rubbin quiet_lad <gavcomedy@gmail.com> - 2012-06-07 23:55 -0700
                                    Re: post your solution, and don't over write my thread ... BruceMcF <agila61@netscape.net> - 2012-06-08 09:56 -0700
                                Re: DSP question (software modem) Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-06-08 07:52 -0500
                                  Re: DSP question (software modem) Paul Rubin <no.email@nospam.invalid> - 2012-06-08 11:14 -0700
                                    Re: DSP question (software modem) "Rod Pemberton" <do_not_have@notemailntt.cmm> - 2012-06-08 16:29 -0400
                                      Re: DSP question (software modem) Paul Rubin <no.email@nospam.invalid> - 2012-06-08 19:59 -0700
                                        Re: DSP question (software modem) Richard Owlett <rowlett@pcnetinc.com> - 2012-06-08 22:37 -0500
                                    Re: DSP question (software modem) Andrew Haley <andrew29@littlepinkcloud.invalid> - 2012-06-09 04:36 -0500
                                      Re: DSP question (software modem) Paul Rubin <no.email@nospam.invalid> - 2012-06-09 09:41 -0700
                    Re: post your solution and Paul rubin is a stinker for changing it, you bugger paul!! quiet_lad <gavcomedy@gmail.com> - 2012-06-06 15:52 -0700
                      Re: post your solution and Paul rubin is a stinker for changing it, you bugger paul!! BruceMcF <agila61@netscape.net> - 2012-06-06 16:09 -0700
                        Re: post your solution, please no one change subject, start new thread of your own instead quiet_lad <gavcomedy@gmail.com> - 2012-06-07 11:02 -0700
                          Re: post your solution, please no one change subject, start new thread of your own instead "Elizabeth D. Rather" <erather@forth.com> - 2012-06-07 08:28 -1000
                            Re: post your solution, please no one change subject, start new thread of your own instead quiet_lad <gavcomedy@gmail.com> - 2012-06-07 23:58 -0700
                          Re: post your solution, please no one change subject, start new thread of your own instead Paul Rubin <no.email@nospam.invalid> - 2012-06-07 11:53 -0700
                            Re: post your solution, please no one change subject, start new thread of your own instead quiet_lad <gavcomedy@gmail.com> - 2012-06-07 23:54 -0700
                            Re: post your solution, please no one change subject, start new thread of your own instead quiet_lad <gavcomedy@gmail.com> - 2012-06-08 00:00 -0700
                              Re: post your solution, please no one change subject, start new thread of your own instead BruceMcF <agila61@netscape.net> - 2012-06-08 10:08 -0700
                            [OT] About cancellation of quiet_lad's messages, was Re: post your .... of your own instead Albert van der Horst <albert@spenarnc.xs4all.nl> - 2012-06-08 11:34 +0000
                          Re: post your solution, please no one change subject, start new thread of your own instead BruceMcF <agila61@netscape.net> - 2012-06-08 10:03 -0700
                      Re: post your solution and Paul rubin is a stinker for changing it, you bugger paul!! "Rod Pemberton" <do_not_have@notemailntt.cmm> - 2012-06-06 19:28 -0400
                        This thread is a load of s**t Mark Wills <markrobertwills@yahoo.co.uk> - 2012-06-07 00:54 -0700
                        Re: post your solution and Paul rubin is a stinker for changing it, you bugger paul!! quiet_lad <gavcomedy@gmail.com> - 2012-06-07 11:03 -0700
                          Re: post your solution quiet_lad <gavcomedy@gmail.com> - 2012-06-07 11:10 -0700
            Re: DSP question (software modem) Richard Owlett <rowlett@pcnetinc.com> - 2012-06-04 07:08 -0500
    Re: post your solution to this problem John Passaniti <john.passaniti@gmail.com> - 2012-06-04 09:06 -0700
      Re: post your solution to this problem quiet_lad <gavcomedy@gmail.com> - 2012-06-06 15:51 -0700
        Re: post your solution to this problem "WJ" <w_a_x_man@yahoo.com> - 2012-06-08 16:12 +0000
        Re: post your solution to this problem "WJ" <w_a_x_man@yahoo.com> - 2012-06-09 16:15 +0000
    Re: post your solution to this problem BruceMcF <agila61@netscape.net> - 2012-06-08 10:15 -0700

Page 1 of 3  [1] 2 3  Next page →


#12671 — post your solution to this problem

Fromquiet_lad <gavcomedy@gmail.com>
Date2012-06-03 14:33 -0700
Subjectpost your solution to this problem
Message-ID<85acf1b9-9524-4814-8692-b88662dabe03@ki5g2000pbb.googlegroups.com>
take NBA box score, and return:
point/(fg+(ft/2)) first name last name   sorted decreasing

[toc] | [next] | [standalone]


#12674

From"Rod Pemberton" <do_not_have@notemailntt.cmm>
Date2012-06-03 20:59 -0400
Message-ID<jqh172$7hn$1@speranza.aioe.org>
In reply to#12671
"quiet_lad" <gavcomedy@gmail.com> wrote in message
news:85acf1b9-9524-4814-8692-b88662dabe03@ki5g2000pbb.googlegroups.com...
>
> [inSubject] post your solution to this problem
>

Why?  Seriously.

And, why do you _constantly_ ask others to provide entire solutions to
programming problems?  Much of the time, the solutions you ask for are
non-trivial and would require a huge amount of effort by someone else.
E.g., Linux in Forth, a GUI in Forth, a web browser an appserver in Forth,
database in Forth to replace Oracle...  That's just under your recent alias.

Depending on my feelings and thoughts about you at the time, I can take that
a variety of ways and I have:

1) you're wanting others to do your work (or homework)
2) you've made up some problem where you don't really care about a solution,
i.e., contrived, but are wanting to spur conversation, competition, or
arguments, or conflict
3) it's something you'd like to have done, but can't or won't spend your
time to do it yourself
4) you're intentionally being a nuisance

FYI, most good programmers have a DIY attitude...

So, since this is c.l.f., why don't you post a partial Forth solution first?
Or, post what you've got so far...  If nothing, state where you want to
start.

At a minimum, you've been around c.l.f. long enough to understand some
Forth.  So, please, post a Forth word to compute "(point/(fg+(ft/2)))".

1) convert it to RPN
2) prefix a name
3) surround it by : and ;
4) enter values onto stack
5) execute word
6) display number

Is it correct?  We're waiting ...
(I ask others to not post a solution.)

Do you even have a Forth installed?

If I was solving this problem, I wouldn't use Forth.  Forth may be perfectly
fine for this, but Forth's not my first choice.  Personally, I would select
from the following methods, in the listed order:

a) use a calculator, save the numeric result in a fixed-width, zero-padded
format followed by names etc in a text file, sort file, e.g., in DOS (x86)
b) paste into Excel, enter equation, sort all columns by computed column
c) write a C program to read a text file, compute the equation, emit ranked
results
d) similar to c) but in Javascript, because you can use it in a browser and
don't need Excel
e) use a calculator, write results down on paper, look at results

Solution e) should always work, but it will take you a few minutes.  IMO,
that's perfectly fine for sports fans.  Sports fans don't seem to have any
other serious time constraints at home or work...

Solution a) always works, but is not for those unskilled with DOS, or where
DOS is unavailable.  Without coding a program, it's also the fastest
solution.  Once a program is coded, the program will be the fastest
solution.  But, coding the program will take more time upfront.  So, given
the upfront time cost, coding a program is always the secondary option,
unless the task needs to be automated, i.e., work related.

Solution b) is probably the "best" general purpose solution for the "common
man," i.e., someone who has a computer or access to one.  It's also probably
the second quickest non-programming solution.  You should have a spreadsheet
on your home or work computer.  If you don't have Excel, you can always try
OpenOffice for it's spreadsheet.  If you don't have access to a computer at
home or work, you can ask your local library's computers have a spreadsheet
installed.  Otherwise, it's solution e) for you.


Rod Pemberton

[toc] | [prev] | [next] | [standalone]


#12679

Fromquiet_lad <gavcomedy@gmail.com>
Date2012-06-03 19:06 -0700
Message-ID<deef0369-f8f1-4652-b991-11d1035699e0@qs4g2000pbc.googlegroups.com>
In reply to#12674
On Jun 3, 5:59 pm, "Rod Pemberton" <do_not_h...@notemailntt.cmm>
wrote:
> "quiet_lad" <gavcom...@gmail.com> wrote in message
>
> news:85acf1b9-9524-4814-8692-b88662dabe03@ki5g2000pbb.googlegroups.com...
>
>
>
> > [inSubject] post your solution to this problem
>
> Why?  Seriously.
>
> And, why do you _constantly_ ask others to provide entire solutions to
> programming problems?  Much of the time, the solutions you ask for are
> non-trivial and would require a huge amount of effort by someone else.
> E.g., Linux in Forth, a GUI in Forth, a web browser an appserver in Forth,
> database in Forth to replace Oracle...  That's just under your recent alias.
>
> Depending on my feelings and thoughts about you at the time, I can take that
> a variety of ways and I have:
>
> 1) you're wanting others to do your work (or homework)
> 2) you've made up some problem where you don't really care about a solution,
> i.e., contrived, but are wanting to spur conversation, competition, or
> arguments, or conflict
> 3) it's something you'd like to have done, but can't or won't spend your
> time to do it yourself
> 4) you're intentionally being a nuisance
>
> FYI, most good programmers have a DIY attitude...
>
> So, since this is c.l.f., why don't you post a partial Forth solution first?
> Or, post what you've got so far...  If nothing, state where you want to
> start.
>
> At a minimum, you've been around c.l.f. long enough to understand some
> Forth.  So, please, post a Forth word to compute "(point/(fg+(ft/2)))".
>
> 1) convert it to RPN
> 2) prefix a name
> 3) surround it by : and ;
> 4) enter values onto stack
> 5) execute word
> 6) display number
>
> Is it correct?  We're waiting ...
> (I ask others to not post a solution.)
>
> Do you even have a Forth installed?
>
> If I was solving this problem, I wouldn't use Forth.  Forth may be perfectly
> fine for this, but Forth's not my first choice.  Personally, I would select
> from the following methods, in the listed order:
>
> a) use a calculator, save the numeric result in a fixed-width, zero-padded
> format followed by names etc in a text file, sort file, e.g., in DOS (x86)
> b) paste into Excel, enter equation, sort all columns by computed column
> c) write a C program to read a text file, compute the equation, emit ranked
> results
> d) similar to c) but in Javascript, because you can use it in a browser and
> don't need Excel
> e) use a calculator, write results down on paper, look at results
>
> Solution e) should always work, but it will take you a few minutes.  IMO,
> that's perfectly fine for sports fans.  Sports fans don't seem to have any
> other serious time constraints at home or work...
>
> Solution a) always works, but is not for those unskilled with DOS, or where
> DOS is unavailable.  Without coding a program, it's also the fastest
> solution.  Once a program is coded, the program will be the fastest
> solution.  But, coding the program will take more time upfront.  So, given
> the upfront time cost, coding a program is always the secondary option,
> unless the task needs to be automated, i.e., work related.
>
> Solution b) is probably the "best" general purpose solution for the "common
> man," i.e., someone who has a computer or access to one.  It's also probably
> the second quickest non-programming solution.  You should have a spreadsheet
> on your home or work computer.  If you don't have Excel, you can always try
> OpenOffice for it's spreadsheet.  If you don't have access to a computer at
> home or work, you can ask your local library's computers have a spreadsheet
> installed.  Otherwise, it's solution e) for you.
>
> Rod Pemberton

-erases scathing answer-
I wrotea solution in awk tcl etc. and am wondering how in forth.  If
you don't want to provide a solution why not just read other posts?

[toc] | [prev] | [next] | [standalone]


#12685

From"Elizabeth D. Rather" <erather@forth.com>
Date2012-06-03 18:27 -1000
Message-ID<StSdnc_tfoK2pFHSnZ2dnUVZ_omdnZ2d@supernews.com>
In reply to#12679
On 6/3/12 4:06 PM, quiet_lad wrote:
...
> I wrotea solution in awk tcl etc. and am wondering how in forth.  If
> you don't want to provide a solution why not just read other posts?

If you want to know how to do this in Forth, I recommend that you 
install a Forth and start writing code. You will learn nothing from 
looking at someone else's code.

Cheers,
Elizabeth

-- 
==================================================
Elizabeth D. Rather   (US & Canada)   800-55-FORTH
FORTH Inc.                         +1 310.999.6784
5959 West Century Blvd. Suite 700
Los Angeles, CA 90045
http://www.forth.com

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

[toc] | [prev] | [next] | [standalone]


#12680

Fromquiet_lad <gavcomedy@gmail.com>
Date2012-06-03 19:49 -0700
Message-ID<ca499d7a-c196-438f-aa30-069f0b049f2f@ra8g2000pbc.googlegroups.com>
In reply to#12674
On Jun 3, 5:59 pm, "Rod Pemberton" <do_not_h...@notemailntt.cmm>
wrote:
> "quiet_lad" <gavcom...@gmail.com> wrote in message
>
> news:85acf1b9-9524-4814-8692-b88662dabe03@ki5g2000pbb.googlegroups.com...
>
>
>
> > [inSubject] post your solution to this problem
>
> Why?  Seriously.
>
> And, why do you _constantly_ ask others to provide entire solutions to
> programming problems?  Much of the time, the solutions you ask for are
> non-trivial and would require a huge amount of effort by someone else.
> E.g., Linux in Forth, a GUI in Forth, a web browser an appserver in Forth,
> database in Forth to replace Oracle...  That's just under your recent alias.
>
> Depending on my feelings and thoughts about you at the time, I can take that
> a variety of ways and I have:
>
> 1) you're wanting others to do your work (or homework)
> 2) you've made up some problem where you don't really care about a solution,
> i.e., contrived, but are wanting to spur conversation, competition, or
> arguments, or conflict
> 3) it's something you'd like to have done, but can't or won't spend your
> time to do it yourself
> 4) you're intentionally being a nuisance
>
> FYI, most good programmers have a DIY attitude...
>
> So, since this is c.l.f., why don't you post a partial Forth solution first?
> Or, post what you've got so far...  If nothing, state where you want to
> start.
>
> At a minimum, you've been around c.l.f. long enough to understand some
> Forth.  So, please, post a Forth word to compute "(point/(fg+(ft/2)))".
>
> 1) convert it to RPN
> 2) prefix a name
> 3) surround it by : and ;
> 4) enter values onto stack
> 5) execute word
> 6) display number
>
> Is it correct?  We're waiting ...
> (I ask others to not post a solution.)
>
> Do you even have a Forth installed?
>
> If I was solving this problem, I wouldn't use Forth.  Forth may be perfectly
> fine for this, but Forth's not my first choice.  Personally, I would select
> from the following methods, in the listed order:
>
> a) use a calculator, save the numeric result in a fixed-width, zero-padded
> format followed by names etc in a text file, sort file, e.g., in DOS (x86)
> b) paste into Excel, enter equation, sort all columns by computed column
> c) write a C program to read a text file, compute the equation, emit ranked
> results
> d) similar to c) but in Javascript, because you can use it in a browser and
> don't need Excel
> e) use a calculator, write results down on paper, look at results
>
> Solution e) should always work, but it will take you a few minutes.  IMO,
> that's perfectly fine for sports fans.  Sports fans don't seem to have any
> other serious time constraints at home or work...
>
> Solution a) always works, but is not for those unskilled with DOS, or where
> DOS is unavailable.  Without coding a program, it's also the fastest
> solution.  Once a program is coded, the program will be the fastest
> solution.  But, coding the program will take more time upfront.  So, given
> the upfront time cost, coding a program is always the secondary option,
> unless the task needs to be automated, i.e., work related.
>
> Solution b) is probably the "best" general purpose solution for the "common
> man," i.e., someone who has a computer or access to one.  It's also probably
> the second quickest non-programming solution.  You should have a spreadsheet
> on your home or work computer.  If you don't have Excel, you can always try
> OpenOffice for it's spreadsheet.  If you don't have access to a computer at
> home or work, you can ask your local library's computers have a spreadsheet
> installed.  Otherwise, it's solution e) for you.
>
> Rod Pemberton

-after reading your whole post-
I had hoped to see how a forther reads in data from a file, splits it
into lines, picks our pieces, then orders the printout of name score
calculaions.  The file manipulation would seem the hardest part.

[toc] | [prev] | [next] | [standalone]


#12686

From"Elizabeth D. Rather" <erather@forth.com>
Date2012-06-03 18:28 -1000
Message-ID<StSdnc7tfoLjpFHSnZ2dnUVZ_okAAAAA@supernews.com>
In reply to#12680
On 6/3/12 4:49 PM, quiet_lad wrote:
...
> I had hoped to see how a forther reads in data from a file, splits it
> into lines, picks our pieces, then orders the printout of name score
> calculaions.  The file manipulation would seem the hardest part.

How to do this is described in many books and manuals already available. 
All you have to do is read them. It is not reasonable to expect us to do 
your work for you.

Cheers,
Elizabeth

-- 
==================================================
Elizabeth D. Rather   (US & Canada)   800-55-FORTH
FORTH Inc.                         +1 310.999.6784
5959 West Century Blvd. Suite 700
Los Angeles, CA 90045
http://www.forth.com

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

[toc] | [prev] | [next] | [standalone]


#12688 — DSP question (software modem)

FromPaul Rubin <no.email@nospam.invalid>
Date2012-06-03 22:22 -0700
SubjectDSP question (software modem)
Message-ID<7x4nqrodlk.fsf_-_@ruckus.brouhaha.com>
In reply to#12686
I'm wondering how feasible it would be to implement a software modem
(1200 bps would be plenty) on an 8-bit micro or MSP430 without a
hardware multiplier, the type with enough memory to run a Forth text
interpreter with very few external parts.  They tend to have a few
analog i/o pins and be fairly fast (10 mhz or more), but otherwise not
be very powerful.

The idea is to be able to use an Android or similar mobile phone as a
console for an embedded Forth, by connecting an audio patch cable
between the device and the phone's earphone/mic socket (phones tend to
not have serial ports).  Of course Bluetooth would be really nice, but
embeddedable Bluetooth modules all seem big and expensive.

Any thoughts?  I figure the phone side is pretty easy, since phone cpu's
are so powerful.  On the device side, assuming FSK like an old
half-duplex phone modem, we need to recognize two frequencies.  With 8
khz sampling and 32 cycles per 16x16 multiplication, we need 256 cpu khz
for every multiplication, so maybe we can do 20 or so multiplications
per sample with enough cycles left for bit twiddling, the interpreter,
and the user application.  Is that likely to be enough?  Is it
appropriate to use IIR filters for this sort of thing, with 8 bit
samples?  What is the right kind of filter to use?  I looked at some DSP
textbooks a while back so I've seen some of the relevant math, but I
don't have any real experience with this sort of thing.

All thoughts are welcome, including about the wisdom (or lack of it) of
the whole concept.

Thanks.

[toc] | [prev] | [next] | [standalone]


#12691 — Re: DSP question (software modem)

FromMark Wills <markrobertwills@yahoo.co.uk>
Date2012-06-04 02:19 -0700
SubjectRe: DSP question (software modem)
Message-ID<7af113b4-f2e2-4f51-9bc6-98ebd5c6b7d7@s9g2000vbg.googlegroups.com>
In reply to#12688
On Jun 4, 6:22 am, Paul Rubin <no.em...@nospam.invalid> wrote:
> I'm wondering how feasible it would be to implement a software modem
> (1200 bps would be plenty) on an 8-bit micro or MSP430 without a
> hardware multiplier, the type with enough memory to run a Forth text
> interpreter with very few external parts.  They tend to have a few
> analog i/o pins and be fairly fast (10 mhz or more), but otherwise not
> be very powerful.
>
> The idea is to be able to use an Android or similar mobile phone as a
> console for an embedded Forth, by connecting an audio patch cable
> between the device and the phone's earphone/mic socket (phones tend to
> not have serial ports).  Of course Bluetooth would be really nice, but
> embeddedable Bluetooth modules all seem big and expensive.
>
> Any thoughts?  I figure the phone side is pretty easy, since phone cpu's
> are so powerful.  On the device side, assuming FSK like an old
> half-duplex phone modem, we need to recognize two frequencies.  With 8
> khz sampling and 32 cycles per 16x16 multiplication, we need 256 cpu khz
> for every multiplication, so maybe we can do 20 or so multiplications
> per sample with enough cycles left for bit twiddling, the interpreter,
> and the user application.  Is that likely to be enough?  Is it
> appropriate to use IIR filters for this sort of thing, with 8 bit
> samples?  What is the right kind of filter to use?  I looked at some DSP
> textbooks a while back so I've seen some of the relevant math, but I
> don't have any real experience with this sort of thing.
>
> All thoughts are welcome, including about the wisdom (or lack of it) of
> the whole concept.
>
> Thanks.

Nah. Screw that! Bluetooth is the way to go!

Check out the MSP430BT5190 here:

http://www.ti.com/product/msp430bt5190#feature

That's an ultra low power MSP430 with integrated Bluetooth. It has
256K flash and 16K RAM. Knock yourself out!

There's more information on the MSP430 bluetooth platform here:

http://processors.wiki.ti.com/index.php/MSP430_Bluetooth_Platform

Would you be looking at rolling your own Forth for it? If not, then
I'd recommend looking at Forth INCs SwiftX platform which supports the
'430. You'd need to study the part's data sheet and write your own
Forth words (or, even better, a BT5190 support library) to manage the
facilities on the chip, as I doubt that SwiftX would support all the
features of that particular chip 'out of the box'. That should be
fairly simple though.

I'd recommend starting a new thread on CLF though, as most people open
the thread, see that it's a Gavino (TM) "Stream Of (un)Conciousness"
and then delete the entire thread.

[toc] | [prev] | [next] | [standalone]


#12693 — Re: DSP question (software modem)

FromPaul Rubin <no.email@nospam.invalid>
Date2012-06-04 03:07 -0700
SubjectRe: DSP question (software modem)
Message-ID<7xipf7qtja.fsf@ruckus.brouhaha.com>
In reply to#12691
Mark Wills <markrobertwills@yahoo.co.uk> writes:
> Nah. Screw that! Bluetooth is the way to go!
> Check out the MSP430BT5190 here:
> http://www.ti.com/product/msp430bt5190#feature
> That's an ultra low power MSP430 with integrated Bluetooth. 

Wow, that's pretty interesting and powerful, a bit on the large and
expensive side, but certainly worth knowing about.  And it looks like
the bluetooth radio is not actually on the chip (just a software stack),
so more parts would be needed.

> Would you be looking at rolling your own Forth for it? 

For small MSP430 would probably use CamelForth.  For AtMega I think
there's also Flashforth or other alternatives.

> I'd recommend starting a new thread on CLF though, as most people open
> the thread, see that it's a Gavino (TM) "Stream Of (un)Conciousness"
> and then delete the entire thread.

Ugh, I don't know how that happened, I didn't try to post a followup.  I
usually don't even read his stuff.

> MPE have a gorgeous board on their site:
> http://www.mpeforth.com/pb2468.htm ...  I have no issue with
> investing in professional-grade development tools for serious,
> (potentially money making) projects.)

If I were doing something with significant profit potential I'd consider
that approach, but for what I'm doing, it's way outside my budget.  Also
I like the Beaglebone (beagleboard.org) and am looking into it for
something I'm doing at work.  It's more consumer-grade than the VFX
board though.

[toc] | [prev] | [next] | [standalone]


#12692 — Re: DSP question (software modem)

FromAndrew Haley <andrew29@littlepinkcloud.invalid>
Date2012-06-04 04:32 -0500
SubjectRe: DSP question (software modem)
Message-ID<GYidnThRG4kkHVHSnZ2dnUVZ_r6dnZ2d@supernews.com>
In reply to#12688
Paul Rubin <no.email@nospam.invalid> wrote:
> I'm wondering how feasible it would be to implement a software modem
> (1200 bps would be plenty) on an 8-bit micro or MSP430 without a
> hardware multiplier, the type with enough memory to run a Forth text
> interpreter with very few external parts.  They tend to have a few
> analog i/o pins and be fairly fast (10 mhz or more), but otherwise not
> be very powerful.
> 
> The idea is to be able to use an Android or similar mobile phone as a
> console for an embedded Forth, by connecting an audio patch cable
> between the device and the phone's earphone/mic socket (phones tend to
> not have serial ports).  Of course Bluetooth would be really nice, but
> embeddedable Bluetooth modules all seem big and expensive.
> 
> Any thoughts?  I figure the phone side is pretty easy, since phone cpu's
> are so powerful.  On the device side, assuming FSK like an old
> half-duplex phone modem, we need to recognize two frequencies.  With 8
> khz sampling and 32 cycles per 16x16 multiplication, we need 256 cpu khz
> for every multiplication, so maybe we can do 20 or so multiplications
> per sample with enough cycles left for bit twiddling, the interpreter,
> and the user application.  Is that likely to be enough?  Is it
> appropriate to use IIR filters for this sort of thing, with 8 bit
> samples?  What is the right kind of filter to use?  I looked at some DSP
> textbooks a while back so I've seen some of the relevant math, but I
> don't have any real experience with this sort of thing.
> 
> All thoughts are welcome, including about the wisdom (or lack of it) of
> the whole concept.

I wouldn't use FSK or anything similar.  If a signal has to be carried
over an audio channel, it only has to be DC free and have no
components above the passband of the channel.  If you really don't
need to push the capacity of the channel I would have thought you
could just use a group code.  I'm assuming that the channel doesn't
have a lot of frequency-dependent phase shift.  You could just use FM.

Andrew.

[toc] | [prev] | [next] | [standalone]


#12694 — Re: DSP question (software modem)

FromPaul Rubin <no.email@nospam.invalid>
Date2012-06-04 03:15 -0700
SubjectRe: DSP question (software modem)
Message-ID<7xehpvqt6n.fsf@ruckus.brouhaha.com>
In reply to#12692
Andrew Haley <andrew29@littlepinkcloud.invalid> writes:
> I wouldn't use FSK or anything similar.  If a signal has to be carried
> over an audio channel, it only has to be DC free and have no
> components above the passband of the channel.  If you really don't
> need to push the capacity of the channel I would have thought you
> could just use a group code.  I'm assuming that the channel doesn't
> have a lot of frequency-dependent phase shift.  You could just use FM.

I don't know what happens to the signal phase inside the phone.  I guess
there is ac coupling at both ends, that could introduce some shift.  I
don't understand about group codes--they are ECC codes, right?  Are they
related to modulation somehow?  Would an FM discriminator (in software)
have less complexity than some bandpass filters?  I figure the audio
going to the embedded side is very good (phones double as mp3 players)
but going to the phone side it will be crap (telephony grade voice audio
input).  There's tons of cpu power on the phone side though, enough to
decode fancy modulation schemes if necessary.

I figured old phone modems had some reason for using FSK, and I was
going to emulate one (use same frequencies) if possible and if it made
sense to ever want that.

[toc] | [prev] | [next] | [standalone]


#12695 — Re: DSP question (software modem)

FromAndrew Haley <andrew29@littlepinkcloud.invalid>
Date2012-06-04 05:46 -0500
SubjectRe: DSP question (software modem)
Message-ID<t--dnQcLHf2CD1HSnZ2dnUVZ_sqdnZ2d@supernews.com>
In reply to#12694
Paul Rubin <no.email@nospam.invalid> wrote:
> Andrew Haley <andrew29@littlepinkcloud.invalid> writes:
>> I wouldn't use FSK or anything similar.  If a signal has to be carried
>> over an audio channel, it only has to be DC free and have no
>> components above the passband of the channel.  If you really don't
>> need to push the capacity of the channel I would have thought you
>> could just use a group code.  I'm assuming that the channel doesn't
>> have a lot of frequency-dependent phase shift.  You could just use FM.
> 
> I don't know what happens to the signal phase inside the phone.  I
> guess there is ac coupling at both ends, that could introduce some
> shift.  I don't understand about group codes--they are ECC codes,
> right?

No.  http://en.wikipedia.org/wiki/Group_code_recording

> Are they related to modulation somehow?  Would an FM discriminator
> (in software) have less complexity than some bandpass filters?

http://en.wikipedia.org/wiki/Modified_Frequency_Modulation and
http://en.wikipedia.org/wiki/Run_Length_Limited

All you have to do is poll the line at a regular frequency and look
for transitions.  A software DPLL locks onto the stream.  An automatic
gain control would make life easier.  Maybe you could do a little
filtering to remove spuriae.  With such a crude modulation scheme,
you'd be limited to a bit rate of quite a lot less than the bandwidth
of your channel, but it sounds like that'd be enough.

> I figure the audio going to the embedded side is very good (phones
> double as mp3 players) but going to the phone side it will be crap
> (telephony grade voice audio input).  There's tons of cpu power on
> the phone side though, enough to decode fancy modulation schemes if
> necessary.
> 
> I figured old phone modems had some reason for using FSK, and I was
> going to emulate one (use same frequencies) if possible and if it made
> sense to ever want that.

It's too much trouble to do in software.  The old phone modems used
FSK because it's easy to do with tuned analog filters.  If you're
going to use that much computer power you could use QAM or even a
trellis code, but AFAICS you really don't need that much speed.

Andrew.

[toc] | [prev] | [next] | [standalone]


#12704 — Re: DSP question (software modem)

FromPaul Rubin <no.email@nospam.invalid>
Date2012-06-04 12:16 -0700
SubjectRe: DSP question (software modem)
Message-ID<7xaa0iriot.fsf@ruckus.brouhaha.com>
In reply to#12695
Andrew Haley <andrew29@littlepinkcloud.invalid> writes:
>> I don't understand about group codes--they are ECC codes, right?
> No.  http://en.wikipedia.org/wiki/Group_code_recording

Oh, this makes much more sense.

> All you have to do is poll the line at a regular frequency and look
> for transitions.  A software DPLL locks onto the stream. 

I will have to think about this to figure out how to do it, but the
hint is very helpful, thanks.

> The old phone modems used FSK because it's easy to do with tuned
> analog filters.

It occurs to me, they could have used PLL's rather than filters?  Maybe
the same thing can be done in software using on-chip timers as "VCO"'s.
I.e. rather than sample at a regular rate, adjust the sample rate using
a "phase detector".  That may get rid of all the multiplication.

> If you're going to use that much computer power you could use QAM or
> even a trellis code, but AFAICS you really don't need that much speed.

Of course there will always be uses for more speed, but slow is fine for
getting started ;-).

Per Richard Owlett's suggestion I just looked at some articles about
microcomputer audio cassette formats (e.g. Kansas City Standard).  They
seemed to rely on external hardware (analog electronics I guess).

[toc] | [prev] | [next] | [standalone]


#12705 — Re: DSP question (software modem)

FromAndrew Haley <andrew29@littlepinkcloud.invalid>
Date2012-06-04 14:55 -0500
SubjectRe: DSP question (software modem)
Message-ID<cJ-dnfeax9c5j1DSnZ2dnUVZ_qGdnZ2d@supernews.com>
In reply to#12704
Paul Rubin <no.email@nospam.invalid> wrote:
> Andrew Haley <andrew29@littlepinkcloud.invalid> writes:
> 
>> The old phone modems used FSK because it's easy to do with tuned
>> analog filters.
> 
> It occurs to me, they could have used PLL's rather than filters?

The phase shift was probably all over the place, what with all those
transformers and the like in the analogue telephone days.  In your
case you have a fantastically high-quality audio channel, with
negligible distortion and phase shift and ruler-flat frequency
response.  You're laughing, really.

Andrew.

[toc] | [prev] | [next] | [standalone]


#12706 — Re: DSP question (software modem)

FromPaul Rubin <no.email@nospam.invalid>
Date2012-06-04 13:32 -0700
SubjectRe: DSP question (software modem)
Message-ID<7x1ulug6mn.fsf@ruckus.brouhaha.com>
In reply to#12705
Andrew Haley <andrew29@littlepinkcloud.invalid> writes:
> In your case you have a fantastically high-quality audio channel,

Hmm, actually it's even better: I have TWO (stereo) high quality audio
channels, at least on the downlink side.  It occurs to me that I can use
one channel as a clock and the other for data, with bone-simple
amplitude detection on both.  This is probably the easiest approach.

The uplink side isn't so great, since it goes to a lower bandwidth
one-channel input, but I'll figure something out.

Thanks for all the advice!

[toc] | [prev] | [next] | [standalone]


#12751 — Re: DSP question (software modem)

FromAndrew Haley <andrew29@littlepinkcloud.invalid>
Date2012-06-07 05:20 -0500
SubjectRe: DSP question (software modem)
Message-ID<09ednWWnQP70HU3SnZ2dnUVZ_u2dnZ2d@supernews.com>
In reply to#12706
Paul Rubin <no.email@nospam.invalid> wrote:
> Andrew Haley <andrew29@littlepinkcloud.invalid> writes:
>> In your case you have a fantastically high-quality audio channel,
> 
> Hmm, actually it's even better: I have TWO (stereo) high quality audio
> channels, at least on the downlink side.  It occurs to me that I can use
> one channel as a clock and the other for data, with bone-simple
> amplitude detection on both.  This is probably the easiest approach.

Probably.  Y'know, if you're going to use a separate clock you might
as well use phase encoding: the transition on the data line happens
either before or after the clock pulse.  Trivial to implement, and
(probably :-) DC-free. You probably won't have much skew between the
channels, but you'll soon find out if there is!

> The uplink side isn't so great, since it goes to a lower bandwidth
> one-channel input, but I'll figure something out.

Ah.  :-)

Andrew.

[toc] | [prev] | [next] | [standalone]


#12755 — Re: DSP question (software modem)

FromPaul Rubin <no.email@nospam.invalid>
Date2012-06-07 10:01 -0700
SubjectRe: DSP question (software modem)
Message-ID<7xy5nzukcc.fsf@ruckus.brouhaha.com>
In reply to#12751
Andrew Haley <andrew29@littlepinkcloud.invalid> writes:
> Probably.  Y'know, if you're going to use a separate clock you might
> as well use phase encoding: 

I think I'm going to try to stick with a single channel, among other
things because 3-wire audio patch cables are easy to find and work on
everything, but 4-channel ones that plug into phones are a bit more
obscure, and the pin assignment depends on the brand of phone.

> the transition on the data line happens either before or after the
> clock pulse

Is there a good book or url that discusses this stuff?  Thanks.

[toc] | [prev] | [next] | [standalone]


#12758 — Re: DSP question (software modem)

Fromquiet_lad <gavcomedy@gmail.com>
Date2012-06-07 11:04 -0700
SubjectRe: DSP question (software modem)
Message-ID<384aa3bd-e47d-4925-9fa1-14f14fbfdf87@5g2000vbf.googlegroups.com>
In reply to#12755
On Jun 7, 10:01 am, Paul Rubin <no.em...@nospam.invalid> wrote:
> Andrew Haley <andre...@littlepinkcloud.invalid> writes:
> > Probably.  Y'know, if you're going to use a separate clock you might
> > as well use phase encoding:
>
> I think I'm going to try to stick with a single channel, among other
> things because 3-wire audio patch cables are easy to find and work on
> everything, but 4-channel ones that plug into phones are a bit more
> obscure, and the pin assignment depends on the brand of phone.
>
> > the transition on the data line happens either before or after the
> > clock pulse
>
> Is there a good book or url that discusses this stuff?  Thanks.

Paul I would never get violent on a forth programmer.  Java
maybe. :) ;)

[toc] | [prev] | [next] | [standalone]


#12764 — Re: DSP question (software modem)

FromAndrew Haley <andrew29@littlepinkcloud.invalid>
Date2012-06-07 17:21 -0500
SubjectRe: DSP question (software modem)
Message-ID<AL-dnbeJhNrwtEzSnZ2dnUVZ_qOdnZ2d@supernews.com>
In reply to#12755
Paul Rubin <no.email@nospam.invalid> wrote:
> Andrew Haley <andrew29@littlepinkcloud.invalid> writes:
>> Probably.  Y'know, if you're going to use a separate clock you might
>> as well use phase encoding: 
> 
> I think I'm going to try to stick with a single channel, among other
> things because 3-wire audio patch cables are easy to find and work on
> everything, but 4-channel ones that plug into phones are a bit more
> obscure, and the pin assignment depends on the brand of phone.
> 
>> the transition on the data line happens either before or after the
>> clock pulse
> 
> Is there a good book or url that discusses this stuff?  Thanks.

I'm sure there must be, but it's been a long time.  The college-level
texts tend to be horribly theoretical -- written by frustrated
mathmaticians, probably.  Wikipedia is great, of course:
http://en.wikipedia.org/wiki/Line_coding

Andrew.

[toc] | [prev] | [next] | [standalone]


#12769 — Re: DSP question (software modem)

FromPaul Rubin <no.email@nospam.invalid>
Date2012-06-07 20:36 -0700
SubjectRe: DSP question (software modem)
Message-ID<7x7gvi1nlt.fsf@ruckus.brouhaha.com>
In reply to#12764
Andrew Haley <andrew29@littlepinkcloud.invalid> writes:
>> Is there a good book or url that discusses this stuff?  Thanks.
> http://en.wikipedia.org/wiki/Line_coding

Thanks--though I was asking more about modulation methods for sending
bits over an analog channel.  That Wikipedia article is good, but mostly
about dealing with the channel as already digital.

[toc] | [prev] | [next] | [standalone]


Page 1 of 3  [1] 2 3  Next page →

Back to top | Article view | comp.lang.forth


csiph-web