diff --git a/library/RSL_Emulation.ttcn b/library/RSL_Emulation.ttcn
index d20718f..f45b425 100644
--- a/library/RSL_Emulation.ttcn
+++ b/library/RSL_Emulation.ttcn
@@ -33,6 +33,9 @@
 	port RSL_DCHAN_PT RSL;
 	port RSLEM_PROC_PT RSL_PROC;
 	var RslChannelNr g_chan_nr;
+	/* second BTS / DChan during hand-over */
+	port RSL_DCHAN_PT RSL1;
+	port RSLEM_PROC_PT RSL1_PROC;
 };
 
 type record RSLDC_ChanRqd {
@@ -402,16 +405,18 @@
 }
 
 /* client/conn_hdlr side function to use procedure port to register stream_id/chan_nr */
-function f_rslem_register(uint8_t trx_nr, RslChannelNr chan_nr) runs on RSL_DchanHdlr {
-	RSL_PROC.call(RSLEM_register:{trx_nr, chan_nr, self}) {
-		[] RSL_PROC.getreply(RSLEM_register:{?,?,?}) {};
+function f_rslem_register(uint8_t trx_nr, RslChannelNr chan_nr, RSLEM_PROC_PT PT := RSL_PROC)
+runs on RSL_DchanHdlr {
+	PT.call(RSLEM_register:{trx_nr, chan_nr, self}) {
+		[] PT.getreply(RSLEM_register:{?,?,?}) {};
 	}
 }
 
 /* client/conn_hdlr side function to use procedure port to unregister stream_id/chan_nr */
-function f_rslem_unregister(uint8_t trx_nr, RslChannelNr chan_nr) runs on RSL_DchanHdlr {
-	RSL_PROC.call(RSLEM_unregister:{trx_nr, chan_nr, self}) {
-		[] RSL_PROC.getreply(RSLEM_unregister:{?,?,?}) {};
+function f_rslem_unregister(uint8_t trx_nr, RslChannelNr chan_nr, RSLEM_PROC_PT PT := RSL_PROC)
+runs on RSL_DchanHdlr {
+	PT.call(RSLEM_unregister:{trx_nr, chan_nr, self}) {
+		[] PT.getreply(RSLEM_unregister:{?,?,?}) {};
 	}
 }
 
