home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1993 #1 / NN_1993_1.iso / spool / comp / sys / amiga / programm / 18318 < prev    next >
Encoding:
Internet Message Format  |  1993-01-07  |  3.8 KB

  1. Path: sparky!uunet!zaphod.mps.ohio-state.edu!swrinde!stanley.nde.swri.edu!kent
  2. From: kent@stanley.nde.swri.edu (Kent D. Polk)
  3. Newsgroups: comp.sys.amiga.programmer
  4. Subject: Re: IPC and shared memory
  5. Date: 8 Jan 1993 00:19:22 GMT
  6. Organization: Southwest Research Institute, San Antonio, Texas
  7. Lines: 66
  8. Message-ID: <1iihaaINN7fv@swrinde.nde.swri.edu>
  9. References: <paulk.33x6@terapin.com> <1ifq0hINNak2@uwm.edu> <1993Jan7.203535.11473@oracle.us.oracle.com>
  10. NNTP-Posting-Host: stanley.nde.swri.edu
  11.  
  12. In article <1993Jan7.203535.11473@oracle.us.oracle.com> dnavas@oracle.uucp (David Navas) writes:
  13. >In article <1ifq0hINNak2@uwm.edu> bloc1469@ee.ee.uwm.edu (Gregory R Block) writes:
  14. >
  15. >>importantly, one could write "AI slaves" as seen in muds, robots if
  16. >>you will, or perhaps highly intelligent monsters.  It all depends on
  17. >>how you're designing the game, but it does sound as if you could
  18. >>benefit from having a master process with either subprocesses (perhaps
  19. >>your bbs could call an AREXX script which launched a slave or
  20. >>something) or as separate slaves (the more complex but more powerful
  21. >>solution).
  22.  
  23. I don't see a heck of a lot of difference between this and the signal
  24. processing modules we have running and under development using Dave's shadow
  25. stuff.
  26.  
  27. In our case, a module master process which (as Dave described earlier)
  28. manages pretty much everything that the modules have in common.  Such
  29. activities are transparent to the modules unless the module needs to do
  30. something special with an attribute.  I.e. each module's simply defines a few
  31. attribute and method structures and then calls the DoShadow function.  Signal
  32. processing 'events' are managed via assigned processes. These processes run
  33. the designated module instances' functions in its own process space while the
  34. UI stuff, etc. is run in the module process space (I think :^)
  35.  
  36. So, multiple instance issues (as in multiple instances of a game monster
  37. process), UI issues, configuration file loading and saving and lots more
  38. aren't even hinted at in the module source except for the attribute
  39. declarations.  Virtually all of the nasty and difficult ipc and
  40. process-handling issues that I struggled with before SHADOW pretty much
  41. disappeared. What was left was that I could concentrate on writing the real
  42. module software.
  43.  
  44. As far as I am concerned, this is THE easiest way to handle these types of
  45. issues (and others I won't go into here). And I know next to nothing about
  46. object-oriented programming much less SHADOWV! (did I get everything correct
  47. Dave?)
  48.  
  49. -----------------------------------------------------
  50. Now, how well does this work? Well last week I had the following configuration:
  51.  
  52. 1) a generic stereo parallel port sampler running on 80 us. interrupts which
  53.    fed into a
  54. 2) waveform Delay module which fed into a
  55. 3) 4 channel Audio Play module which fed into an
  56. 4) Oscilloscope display module which fed into an
  57. 5) Event FileSave module.
  58.  
  59. Yes, I was sampling stereo at 12.5 kHz, delaying the second channel by about
  60. 500 samples, playing back the results in audio and plotting the waveforms AND
  61. writing the results to my Quantum 52MB drive throught the FFS filesystem (the
  62. one that came with my A3000) in realtime. (I can go up to about 17kHz if I
  63. turn off the waveform plotting and still write to disk in realtime.)
  64.  
  65. I sampled the first 8 or so minutes of "Beauty and the Beast" this way (about
  66. a 12MB stereo sample). Didn't miss a detectable beat in the whole sample and
  67. quality was very impressive for an 8 bit sampler.  Once I had the file, many
  68. more realtime effects were possible as the system didn't have to be servicing
  69. that sampler interrupt every 80 us.
  70.  
  71. Go for SHADOW V. It's fun!
  72.  
  73. (Now how about that kickback Dave?)
  74.  
  75. Kent Polk: Southwest Research Institute (will disavow any knowledge of me)
  76. Internet : kent@swrinde.nde.swri.edu
  77. (DoF #)  : Eternal bliss can be obtained anywhere, I just forgot what it is.
  78.