Hangar.La tienda de software del Amiga

IREdev 3.17

Interrupt related event lib/sound record

Short:        Interrupt related event lib/sound record
Author:       Joerg van de Loo
Uploader:     joergloo aol com
Type:         util/libs
Version:      3.17
Replaces:     util/libs/IREdev.lha
Requires:     68020+ CPU
Architecture: m68k-amigaos >= 3.0.0


Introduction:

This  library is a trash-product of a problem definition which was described
in  a German-speaking forum.

This  library  was  intentionally  created  to support high-level languages,
such  as  BASIC, which can not natively deal with interrupts, in contrast to
low-level  languages,  like  C or assembler, where you can do it on your own
in case you have the needed knowledge.

IRE  library  is  designed for Classic Amigas and not for AROS/MorphOS/OS4 -
although  on  MorphOS/OS4  it  could  be used if you don't need more than 60
calls  per  second  (interruptions)  - but this is completely untested and I
guess  that  the  low-level  library  suits  better  in  order  to  generate
interrupts on these systems.

On  Classics  using  a  68060/50  MHz  CPU you can specify up to 40 thousand
calls per second but that would lead to entirely slow down the whole machine.
In  addition,  on  Classics you can digitize via a digitizer at the parallel
port audio tracks (8-bit mono).
With  that, there is a built-in digitizer for those who need it. Furthermore
this sound recorder outputs what it fetches.
You  may also digitize 16 bits of audio signals (interpolated; built-in) and
suppress  the  8-bit  output.  In  that case you'll need to provide your own
routines for outputting the recorded audio signals - for example using AHI.

IRE   library  offers  two  types  of  interrupts:  A  timer-device  related
interrupt  that  can  be  called upto 60 times per second and a CIA hardware
timer  with  the  possibility to create interruptions upto 40 thousand times
per second.



Four bug fixes applied to this version:
----------------------------------------
Using  TOGGLE_MAKE_AUDIBLE  during  the  interrupt  is  active  doesn't lead
anymore to crash the entire system.

Solved  all  Enforcer-hits  - which surfaced in case a resource could not be
procured.

The  parallel port is now correctly unlocked - even if other resources could
not  be  obtained  during  the  initialization (in that case InitIRQ() comes
back with an iHandle of zero).

A  memory leak has been fixed; in previous version each unsuccessful call to
InitIRQ() caused 40 bytes of memory to lose.


Improvements:
-------------
In  earlier  versions  you could only choose 6000 Hz for the sound recording
using  a 68030/50 MHz CPU without freezing the system - this versions allows
now the double amount.


NOTE:
-----
In  case  you  incorporate  assember-code  in your MBasic/HBasic program you
have to use CacheClearE() - otherwise you'll be faced with crashes.


Source codes:
-------------
I  revised  the  complete  source  code  by  using  exclusively  the English
language  and  with that now the source code of this library is available as
independent archive (Aminet dev/c/IREsrc.lha).

Gratis

Descargar 63 KB

Desde el Amiga: abre Hangar y busca IREdev.

AutorJoerg van de Loo
Categoríautil/libs
Tamaño63 KB
Fecha2024-03-20
Param68k-amigaos >= 3.0.0
Necesita68020+ CPU
OrigenAminet