aboutsummaryrefslogtreecommitdiffstats
path: root/src/bnetz
diff options
context:
space:
mode:
authorAndreas Eversberg <jolly@eversberg.eu>2018-02-15 07:33:43 +0100
committerAndreas Eversberg <jolly@eversberg.eu>2018-02-15 08:00:20 +0100
commita5aee82e5383e3106924170e60fe10d5bb8f9c73 (patch)
treea6eb3b08a9070d5188174c2c86079f31d22d092a /src/bnetz
parent6b9326982a9b3ea56239b1aafb1a7acd5e59103e (diff)
B-Netz: Some cleanups
Diffstat (limited to 'src/bnetz')
-rw-r--r--src/bnetz/bnetz.c29
-rw-r--r--src/bnetz/bnetz.h2
-rw-r--r--src/bnetz/telegramm.c2
3 files changed, 4 insertions, 29 deletions
diff --git a/src/bnetz/bnetz.c b/src/bnetz/bnetz.c
index 570dde6..9d326b8 100644
--- a/src/bnetz/bnetz.c
+++ b/src/bnetz/bnetz.c
@@ -32,9 +32,6 @@
#include "telegramm.h"
#include "dsp.h"
-// Uncomment this to generate a dial sequnce (for testing)
-//#define GEN_DIALSEQUENCE
-
/* Call reference for calls from mobile station to network
This offset of 0x400000000 is required for MNCC interface. */
static int new_callref = 0x40000000;
@@ -284,12 +281,6 @@ static void bnetz_go_idle(bnetz_t *bnetz)
bnetz_new_state(bnetz, BNETZ_FREI);
bnetz_set_dsp_mode(bnetz, DSP_MODE_TELEGRAMM);
switch_channel_19(bnetz, 0);
-#ifdef GEN_DIALSEQUENCE
- if (bnetz->sender.loopback) {
- bnetz_set_dsp_mode(bnetz, DSP_MODE_0);
- timer_start(&bnetz->timer, 0.6);
- }
-#endif
}
/* Release connection towards mobile station by sending release digits. */
@@ -326,21 +317,10 @@ const char *bnetz_get_telegramm(bnetz_t *bnetz)
struct impulstelegramm *it = NULL;
if (bnetz->sender.loopback) {
-#ifdef GEN_DIALSEQUENCE
- char *dialstring="s50993310es50993310e", c;
- c = dialstring[bnetz->loopback_count++];
- if (c) {
- it = bnetz_telegramm(c);
- } else {
- bnetz_set_dsp_mode(bnetz, DSP_MODE_SILENCE);
- return NULL;
- }
-#else
bnetz->loopback_time[bnetz->loopback_count] = get_time();
it = bnetz_digit2telegramm(bnetz->loopback_count + '0');
if (++bnetz->loopback_count > 9)
bnetz->loopback_count = 0;
-#endif
} else
switch(bnetz->state) {
case BNETZ_FREI:
@@ -490,7 +470,7 @@ void bnetz_receive_telegramm(bnetz_t *bnetz, uint16_t telegramm, double level_av
case 'S':
bnetz->dial_type = DIAL_TYPE_METER;
break;
- case 'U':
+ case 'M':
bnetz->dial_type = DIAL_TYPE_METER_MUENZ;
break;
default:
@@ -556,7 +536,7 @@ void bnetz_receive_telegramm(bnetz_t *bnetz, uint16_t telegramm, double level_av
return;
}
break;
- case 'U':
+ case 'M':
if (bnetz->dial_type != DIAL_TYPE_METER_MUENZ) {
PDEBUG(DBNETZ, DEBUG_NOTICE, "Second received start message('Funkwahl') does not match first one (metering support, payphone), releaseing.\n");
bnetz_release(bnetz, TRENN_COUNT);
@@ -671,11 +651,6 @@ static void bnetz_timeout(struct timer *timer)
bnetz_t *bnetz = (bnetz_t *)timer->priv;
switch (bnetz->state) {
-#ifdef GEN_DIALSEQUENCE
- case BNETZ_FREI:
- bnetz_set_dsp_mode(bnetz, DSP_MODE_TELEGRAMM);
- break;
-#endif
case BNETZ_WAHLABRUF:
PDEBUG_CHAN(DBNETZ, DEBUG_NOTICE, "Timeout while receiving call setup from mobile station, releasing.\n");
bnetz_release(bnetz, TRENN_COUNT);
diff --git a/src/bnetz/bnetz.h b/src/bnetz/bnetz.h
index 34fa93f..6359fb3 100644
--- a/src/bnetz/bnetz.h
+++ b/src/bnetz/bnetz.h
@@ -68,7 +68,7 @@ typedef struct bnetz {
int callref; /* call reference */
enum dial_mode dial_mode; /* sub state while dialing is received */
enum dial_type dial_type; /* defines if mobile supports metering pulses */
- char dial_number[14]; /* dial string received */
+ char dial_number[14]; /* dial string received (13 digits + termination, first 0-digit not included) */
int dial_pos; /* current position while receiving digits */
char station_id[6]; /* current station ID */
int station_id_pos; /* position while transmitting */
diff --git a/src/bnetz/telegramm.c b/src/bnetz/telegramm.c
index 5e76fc5..081a3d4 100644
--- a/src/bnetz/telegramm.c
+++ b/src/bnetz/telegramm.c
@@ -38,7 +38,7 @@ static struct impulstelegramm impulstelegramme[] = {
/* Signale */
{ 's', "0111001000100010", 0x0000, "Funkwahl ohne Gebuehrenuebermittlung" },
{ 'S', "0111000100100100", 0x0000, "Funkwahl mit Gebuehrenuebermittlung" },
- { 'U', "0111000010101000", 0x0000, "Funkwahl mit Gebuehrenuebermittlung (Muenzfernsprecher)" },
+ { 'M', "0111000010101000", 0x0000, "Funkwahl mit Gebuehrenuebermittlung (Muenzfernsprecher)" },
{ 'e', "0111010000100001", 0x0000, "Funkwahlende" },
{ 't', "0111010101010101", 0x0000, "Trennsignal/Schlusssignal" },
/* Kanalbefehl B1 */