Commit Graph

55 Commits

Author SHA1 Message Date
Morten Rolland b47cebd49f Try to establish a more generic low level soundcard/ISDN/winmodem hardware
abstraction layer at the most fundamental level.
2001-10-28 19:02:03 +00:00
Morten Rolland cc0fcaee0a This is a monster checkin that really should have been done a lot before,
but many of the changes are dependent on each other.  This checkin is an
intermediate version that is not complete and may not even compile, but I
don't dare sit on the changes any longer.

One of the major changes is the API for the state machine system which
has been changed a lot to facilitate some new features.  The most obvious
result of this is that some of the code in G3/fsm.c now needs to be
modified.  I hope this is a good change, although the syntax is
doubious as it makes heavy use of the C preprocessor and the state
machine functions really don't look like C functions any more.

Another important change is the HAL, which should make it easier to
make this code work on non-ISDN hardware.

Take care; much work remains.
2000-10-28 18:18:54 +00:00
Thomas Reinemannn 08977969df *** empty log message *** 1999-12-14 20:49:17 +00:00
Morten Rolland dfe1586629 A set of functions that helps to maintain a PTY-device for modem emulation. 1999-10-31 21:16:13 +00:00
Morten Rolland 76a1ca2f81 Added framework for parsing AT-commands received on a pty. 1999-10-31 21:10:48 +00:00
Morten Rolland a2e7a9fb6c Create proper DIS and CSI frames. 1999-08-29 18:57:04 +00:00
Morten Rolland 252a53bce9 Add config-option 'subscriber-identification' that goes into the CSI frame. 1999-08-29 18:52:54 +00:00
Morten Rolland c0db7e9bed New debugging format DEBUG_FORMAT_CONFIDENCE for debugging fsk_demod.c 1999-08-27 17:48:47 +00:00
Morten Rolland b7a55f9ede Added debugging format DEBUG_FORMAT_PACKED_BINARY for looking at byte-packed
sequences of bits, first bit in LSB.
1999-08-14 13:53:42 +00:00
Morten Rolland e3c90f8d4f Use new Statemachine framework. 1999-07-01 14:48:29 +00:00
Morten Rolland bd0e62c2e1 Build/analyze command-frames (DIS, DCS, ...) 1999-07-01 14:35:58 +00:00
Morten Rolland 864ed26323 Make state-machine use the new FSM framework. 1999-07-01 14:32:18 +00:00
Morten Rolland 4826f9f9c1 Framework for administrating multiple Finate State Machines (FSMs) 1999-07-01 14:27:19 +00:00
Morten Rolland 1b6a12cab6 Comand CMD_HDLC_FRAMING_IDLE will poll if encoder is idle (has finnished typ.) 1999-07-01 14:24:48 +00:00
Andreas Beck 780d309b3d Various small changes to HDLC decoding. 1999-06-29 19:36:17 +00:00
Thomas Reinemannn d7258a4654 *** empty log message *** 1999-06-28 18:55:01 +00:00
Morten Rolland 2f336bc056 Modified to be able to record both input and output in a log-file. The
old WAV-format logging format is gone; use external conversion.
1999-06-28 12:45:08 +00:00
Morten Rolland b1fb9a220b Make re-entrant with #ifndef/#define/#endif 1999-06-28 12:40:24 +00:00
Morten Rolland 011007c54d Let the state-machine try to transmit something using HDLC and V.21 1999-04-18 18:20:48 +00:00
Morten Rolland 56e1aa5365 Regsiter new hdlc-encoder module. 1999-04-18 18:09:41 +00:00
Morten Rolland 28c2aeecd6 General cleanup and direct export of bitreversal-array for faster access. 1999-04-18 18:03:02 +00:00
Morten Rolland 63f4c0b517 Module for handeling HDLC-framing, bit-stuffing, flag detection, FCS check etc. 1999-04-13 17:26:01 +00:00
Morten Rolland 55ef6b4f8e Minor fixes. 1999-03-21 15:39:26 +00:00
Morten Rolland b4d2b78bca Introduce helper-function for connecting DSP-modules into a chain. 1999-03-21 15:38:00 +00:00
Morten Rolland 29042959c7 Essential functions used during a fax-transfer. 1999-03-21 15:33:59 +00:00
Morten Rolland f83704338d Define all timers used by the G3-fax system. 1999-03-21 15:32:01 +00:00
Morten Rolland d47a133481 Definition of fax-instance as used throughout. 1999-03-21 15:31:18 +00:00
Morten Rolland 91bc735b20 Main finite state machine for G3-fax transfers. 1999-03-21 15:29:34 +00:00
Morten Rolland 082627a20c Create an instance with all modules/variables needed to do G3-faxing. 1999-03-21 15:27:29 +00:00
Morten Rolland 32f1798860 Simple functions to administrate signaling between modules and state-machines 1999-03-21 15:24:35 +00:00
Morten Rolland 5c329672fe Very simple timers for use by the G3-fax state-machine 1999-03-21 15:22:34 +00:00
Morten Rolland aa50aaa335 Added a global instance for the 'linedriver' - it should be only one
linedriver (possibly shared by several modulation standards).
1999-03-09 20:56:38 +00:00
Morten Rolland ba3efe5f2d Added License banner and #ifndef/#endif for multiple inclusion. 1999-03-09 20:54:26 +00:00
Morten Rolland d9cd504479 Added Licence banner. 1999-03-09 20:53:04 +00:00
Morten Rolland b73732c9ea Use the new 'isdnline.c' to access the ISDN-audio subsystem. 1999-03-09 20:47:31 +00:00
Morten Rolland 53c5232deb Functions capable of providing a simple audio-interface to the linux ISDN
subsystem, available through the /dev/ttyI* devices.
1999-03-09 20:26:37 +00:00
Morten Rolland 098be99060 A malloc that exits when it fails, and initializes memory for the benefit
of mlock'ing working memory to avoid paging.  All memory allocations should
be completed before the program locks its memory pages.
1999-03-09 20:23:21 +00:00
Morten Rolland fd60190e3c A simplified and faster way to translate linear <-> alaw, including
bit-reversal.
1999-03-09 20:19:35 +00:00
Morten Rolland d28cd23605 Register all available modules for later use. 1999-03-09 20:15:39 +00:00
Oliver Eichler fbbf7b3116 *** empty log message *** 1999-02-21 12:19:37 +00:00
Morten Rolland d9da365a39 Inital code to support a daemon like program 'amodemd' to handle at least
the DSP and link-level parts of a G3-fax transfer, and possibly standard
modem connections at a later time.
1999-01-31 20:54:55 +00:00
Oliver Eichler 43fb221aca *** empty log message *** 1999-01-25 20:29:53 +00:00
Oliver Eichler 518e776f05 *** empty log message *** 1999-01-25 20:15:12 +00:00
Oliver Eichler cfd64235f8 *** empty log message *** 1999-01-23 19:00:13 +00:00
Morten Rolland ed16aca402 Framework and modules updated to support 'handle_demand'. 1999-01-06 00:27:57 +00:00
Morten Rolland 9d4023b751 Extended module framework to enable demanding data from upstream modules. 1999-01-06 00:08:46 +00:00
Morten Rolland 43330800f6 Added more explicit signed/unsigned types for use in DSP code. 1999-01-06 00:04:23 +00:00
Andreas Beck cd8f23b2f1 Added HDLC frame checking (CRC).
Added interpretation module.
1998-12-21 01:28:11 +00:00
Morten Rolland 3ee683188c New modualtor for 300 bit/s V.21 communication. 1998-12-15 21:53:19 +00:00
Morten Rolland 3486a20d23 The scrambler code is now inside of module 'scrambler.c' 1998-12-07 16:14:01 +00:00