This commit was manufactured by cvs2svn to create branch 'decode'.
[gnokii.git] / win32_makefile / gui_delphi / GnokiiAPI.pas
diff --git a/win32_makefile/gui_delphi/GnokiiAPI.pas b/win32_makefile/gui_delphi/GnokiiAPI.pas
deleted file mode 100644 (file)
index 02ac803..0000000
+++ /dev/null
@@ -1,574 +0,0 @@
-// This is header file for gnokiiapi.dll\r
-// Latest version: http://marcin-wiacek.topnet.pl\r
-\r
-unit GnokiiAPI;\r
-\r
-interface\r
-\r
-uses Classes,Forms,SysUtils;\r
-\r
-const\r
-  GSM_General = 10;\r
-  GSM_Mobile  = 3;\r
-  GSM_Work    = 6;\r
-  GSM_Fax     = 4;\r
-  GSM_Home    = 2;\r
-\r
-  GSM_Date       = 19;\r
-  GSM_Number     = 11;\r
-  GSM_Note       = 10;\r
-  GSM_Postal     = 9;\r
-  GSM_Email      = 8;\r
-\r
-const\r
-  GMT_ME=0;\r
-  GMT_SM=1;\r
-  GMT_FD=2;\r
-  GMT_ON=3;\r
-  GMT_EN=4;\r
-  GMT_DC=5;\r
-  GMT_RC=6;\r
-  GMT_MC=7;\r
-  GMT_LD=8;\r
-  GMT_MT=9;\r
-  GMT_TA=10;\r
-  GMT_CB=11;\r
-  GMT_CG=12;\r
-\r
-  GCT_FBUS=0;\r
-  GCT_MBUS=3;\r
-\r
-  GSS_SENTREAD=1;\r
-  GSS_NOTSENTREAD=3;\r
-\r
-const\r
-  GSM_None=0;\r
-  GSM_StartupLogo=1;      //size 84*48\r
-  GSM_OperatorLogo=2;     //size 72*14\r
-  GSM_CallerLogo=3;       //size 72*14\r
-  GSM_PictureImage=4;     //size 72*28\r
-  GSM_7110OperatorLogo=5; //size 78*21\r
-  GSM_7110StartupLogo=6;  //size 96*65\r
-  GSM_6210StartupLogo=7;  //size 96*60\r
-  GSM_WelcomeNoteText=8;\r
-  GSM_DealerNoteText=9;\r
-\r
-const\r
-  GSM_SoftReset=3;\r
-\r
-const\r
-  GCN_REMINDER=1;\r
-  GCN_CALL=2;\r
-  GCN_MEETING=3;\r
-  GCN_BIRTHDAY=4;\r
-\r
-const\r
-  GSMF_Text   = 0;\r
-  GSMF_Fax    = 34;\r
-  GSMF_Voice  = 36;\r
-  GSMF_ERMES  = 37;\r
-  GSMF_Paging = 38;\r
-  GSMF_UCI    = 45;\r
-  GSMF_Email  = 50;\r
-  GSMF_X400   = 49;\r
-\r
-  GSMV_1_Hour   = 11;\r
-  GSMV_6_Hours  = 71;\r
-  GSMV_24_Hours = 167;\r
-  GSMV_72_Hours = 169;\r
-  GSMV_1_Week   = 173;\r
-  GSMV_Max_Time = 255;\r
-\r
-  GST_SMS=0;\r
-  GST_DR=1;\r
-\r
-  GSM_Coding_Unicode = 1;\r
-  GSM_Coding_Default = 2;\r
-\r
-  GSCT_SecurityCode = 1;\r
-\r
-  GSM_NoUDH=0;\r
-\r
-const\r
-  FN_CALENDAR=0;\r
-  FN_CALLERGROUPS=2;\r
-  FN_SMS=11;\r
-  FN_PROFILES=14;\r
-  FN_WAP=16;\r
-\r
-  F_CAL61=0;//Calendar in 6110 style - 4 types,...\r
-  F_CAL33=1;//Calendar in 3310 style - 10 reminders, Unicode, 3 coding types\r
-  F_CAL71=2;//Calendar in 7110 style - 4 types, recurrance, etc.\r
-\r
-  F_SMS  =7;  //SMS with Inbox, Outbox\r
-  F_SMS71=8;  //SMS with SMS folders like in 7110\r
-  F_PROF61=22;//Profiles numbered like in N6110\r
-  F_PROF51=23;//Profiles numbered like in N5110\r
-  F_PROF33=24;//Profiles numbered like in N3310.Unicode names\r
-\r
-const\r
-  GE_SMSTOOLONG=22;\r
-\r
-const\r
-  PROFILE_MESSAGE_NOTONE=0;\r
-  PROFILE_MESSAGE_STANDARD=1;\r
-  PROFILE_MESSAGE_SPECIAL=2;\r
-  PROFILE_MESSAGE_BEEPONCE=3;\r
-  PROFILE_MESSAGE_ASCENDING=4;\r
-\r
-  PROFILE_WARNING_OFF=255;\r
-  PROFILE_WARNING_ON =4;\r
-\r
-  PROFILE_CALLALERT_RINGING=1;\r
-  PROFILE_CALLALERT_BEEPONCE=2;\r
-  PROFILE_CALLALERT_OFF=4;\r
-  PROFILE_CALLALERT_RINGONCE=5;\r
-  PROFILE_CALLALERT_ASCENDING=6;\r
-  PROFILE_CALLALERT_CALLERGROUPS=7;\r
-\r
-  PROFILE_KEYPAD_OFF=255;\r
-  PROFILE_KEYPAD_LEVEL1=0;\r
-  PROFILE_KEYPAD_LEVEL2=1;\r
-  PROFILE_KEYPAD_LEVEL3=2;\r
-\r
-  PROFILE_VOLUME_LEVEL1=6;\r
-  PROFILE_VOLUME_LEVEL2=7;\r
-  PROFILE_VOLUME_LEVEL3=8;\r
-  PROFILE_VOLUME_LEVEL4=9;\r
-  PROFILE_VOLUME_LEVEL5=10;\r
-\r
-  PROFILE_CALLERGROUPS_ALL=255;\r
-  PROFILE_CALLERGROUPS_FAMILY=1;\r
-  PROFILE_CALLERGROUPS_VIP=2;\r
-  PROFILE_CALLERGROUPS_FRIENDS=4;\r
-  PROFILE_CALLERGROUPS_COLLEAGUES=8;\r
-  PROFILE_CALLERGROUPS_OTHERS=16;\r
-\r
-  PROFILE_VIBRATION_OFF=0;\r
-  PROFILE_VIBRATION_ON=1;\r
-  PROFILE_VIBRATION_FIRST=2;\r
-\r
-type\r
-  GSM_NetworkInfo= record\r
-      NetworkCode: array[1..10] of char; // GSM network code\r
-      CellID: array[1..10] of char;      // CellID\r
-      LAC: array[1..10] of char;         // LAC\r
-  end;\r
-  PGSM_NetworkInfo=^GSM_NetworkInfo;\r
-\r
-  GSM_DateTime=record\r
-    IsSet:integer;\r
-    Year:integer;\r
-    Month:integer;\r
-    Day:integer;\r
-    Hour:integer;\r
-    Minute:integer;\r
-    Second:integer;\r
-    Timezone:integer;\r
-  end;\r
-  PGSM_DateTime=^GSM_DateTime;\r
-\r
-  GSM_SubPhonebookEntry= record\r
-    EntryType:integer;\r
-    NumberType:integer;\r
-    Number:array[1..61] of char;\r
-    Date:GSM_DateTime;\r
-    BlockNumber:integer;\r
-  end;\r
-\r
-  GSM_PhonebookEntry= record\r
-    Empty:integer;\r
-    Name:array[1..51] of char;\r
-    Number:array[1..49] of char;\r
-    MemoryType:integer;\r
-    Group:integer;\r
-    Location:integer;\r
-    SubEntries:array[1..8] of GSM_SubPhonebookEntry;\r
-    SubEntriesCount:integer;\r
-  end;\r
-  PGSM_PhonebookEntry=^GSM_PhonebookEntry;\r
-\r
-  GSM_MemoryStatus=record\r
-    MemoryType:integer;\r
-    Used:integer;\r
-    Free:integer;\r
-  end;\r
-  PGSM_memoryStatus=^GSM_MemoryStatus;\r
-\r
-  GSM_RingtoneNote=record\r
-    duration:byte;\r
-    note:byte;\r
-    tempo:integer;\r
-    style:byte;\r
-  end;\r
-\r
-  GSM_Ringtone=record\r
-    name:array[1..20] of char;\r
-    Loop:byte;\r
-    NrNotes:byte;\r
-    notes:array[1..256] of GSM_RingtoneNote;\r
-    allnotesscale:integer;\r
-    location:integer;\r
-  end;\r
-  PGSM_Ringtone=^GSM_Ringtone;\r
-\r
-  GSM_BinRingtone=record\r
-    name:array[1..20] of char;\r
-    frame:array[1..1000] of char;\r
-    length:integer;\r
-    location:integer;\r
-  end;\r
-  PGSM_BinRingtone=^GSM_BinRingtone;\r
-\r
-  GSM_Bitmap=record\r
-    heigh:byte;\r
-    width:byte;\r
-    size:smallint;\r
-    type2:integer;\r
-    netcode:array[1..7] of char;\r
-    text:array[1..256] of char;\r
-    bitmap:array[1..864] of char;\r
-    number:byte;\r
-    ringtone:byte;\r
-    enabled:integer;\r
-    Sender:array[1..41] of char;\r
-  end;\r
-  PGSM_Bitmap=^GSM_Bitmap;\r
-\r
-  GSM_SpeedDial=record\r
-    Number:integer;\r
-    MemoryType:integer;\r
-    Location:integer;\r
-  end;\r
-  PGSM_SpeedDial=^GSM_SpeedDial;\r
-\r
-  GSM_CalendarNote=record\r
-    Location:integer;\r
-    Type2:integer;\r
-    Time:GSM_DateTime;\r
-    Alarm:GSM_DateTime;\r
-    Text:array[1..59] of char;\r
-    Phone:array[1..37] of char;\r
-\r
-    Recurrance:integer;\r
-    YearOfBirth:integer;\r
-    AlarmType:byte;\r
-    ReadNotesInfo:integer;\r
-  end;\r
-  PGSM_CalendarNote=^GSM_CalendarNote;\r
-\r
-  GSM_MessageCenter=record\r
-    No:integer;\r
-    Name:array[1..20] of char;\r
-    Format:integer;\r
-    Validity:integer;\r
-    Number:array[1..40] of char;\r
-    DefaultRecipient:array[1..40] of char;\r
-  end;\r
-  PGSM_MessageCenter=^GSM_MessageCenter;\r
-\r
-  GSM_Profile=record\r
-    Number:integer;\r
-    Name:array[1..40] of char;\r
-    DefaultName:integer;\r
-    KeypadTone:integer;\r
-    Lights:integer;\r
-    CallAlert:integer;\r
-    Ringtone:integer;\r
-    Volume:integer;\r
-    MessageTone:integer;\r
-    WarningTone:integer;\r
-    Vibration:integer;\r
-    CallerGroups:integer;\r
-    ScreenSaver:integer;\r
-    AutomaticAnswer:integer;\r
-  end;\r
-  PGSM_Profile=^GSM_Profile;\r
-\r
-  GSM_OneSimlock=record\r
-    data:array[1..11] of char;\r
-    enabled:integer;\r
-    counter:integer;\r
-    factory:integer;\r
-  end;\r
-\r
-  GSM_AllSimlocks=record\r
-    simlocks:array[1..4] of GSM_OneSimlock;\r
-  end;\r
-  PGSM_AllSimlocks=^GSM_AllSimlocks;\r
-\r
-  GSM_OneSMSFolder=record\r
-    Name:array[1..15] of char;\r
-    locations:array[1..160] of byte;\r
-    number:byte;\r
-  end;\r
-\r
-  GSM_SMSFolders=record\r
-    Folder: array[1..24] of GSM_OneSMSFolder;\r
-    FoldersID: array[1..24] of byte;\r
-    number:byte;\r
-  end;\r
-  PGSM_SMSFolders=^GSM_SMSFolders;\r
-\r
-  GSM_SMSMessage=record\r
-    Coding:integer;\r
-    Time:GSM_DateTime;\r
-    SMSCTime:GSM_DateTime;\r
-    Length:integer;\r
-    Validity:integer;\r
-    UDHType:integer;\r
-    UDH:array[1..140] of char;\r
-    MessageText:array[1..161] of char;\r
-    MessageCenter:GSM_MessageCenter;\r
-    Sender:array[1..41] of char;\r
-    Destination:array[1..41] of char;\r
-    MessageNumber:integer;\r
-    MemoryType:integer;\r
-    Type2:integer;\r
-    Status:integer;\r
-    Class2:integer;\r
-    Compression:integer;\r
-    Location:integer;\r
-    ReplyViaSameSMSC:integer;\r
-    folder:integer;\r
-    SMSData:integer;\r
-    Name:array[1..26] of char;\r
-  end;\r
-  PGSM_SMSMessage=^GSM_SMSMessage;\r
-\r
-  GSM_MultiSMSMessage=record\r
-    number:integer;\r
-    SMS:array[1..6] of GSM_SMSMessage;\r
-  end;\r
-  PGSM_MultiSMSMessage=^GSM_MultiSMSMessage;\r
-\r
-  GSM_SMS2Foldertable=record\r
-    smsnum:integer;\r
-    folder:shortint;\r
-    location:integer;\r
-  end;\r
-\r
-  GSM_SMSStatus=record\r
-    UnRead:integer;\r
-    Number:integer;\r
-    foldertable:array[1..255] of GSM_SMS2FolderTable;\r
-  end;\r
-  PGSM_SMSStatus=^GSM_SMSStatus;\r
-\r
-  GSM_SecurityCode=record\r
-    Type2:integer;\r
-    Code:array[1..10] of char;\r
-  end;\r
-  PGSM_SecurityCode=^GSM_SecurityCode;\r
-\r
-  GSM_WAPBookmark=record\r
-    adress:array[1..256] of char;\r
-    title:array[1..51] of char;\r
-    location:Word;\r
-  end;\r
-  PGSM_WAPBookmark=^GSM_WAPBookmark;\r
-\r
-  GSM_WAPSettings=record\r
-    location:byte;\r
-    homepage:array[1..101] of char;\r
-    title:array[1..21] of char;\r
-    bearer:integer;\r
-    issecurity:integer;\r
-    iscontinuous:integer;\r
-\r
-    //for data bearer\r
-    ipaddress:array[1..21] of char;\r
-    dialup:array[1..21] of char;\r
-    user:array[1..51] of char;\r
-    password:array[1..51] of char;\r
-    isspeed14400:integer;\r
-    isISDNcall:integer;\r
-    isnormalauthentication:integer;\r
-\r
-    //for sms bearer\r
-    server:array[1..22] of char;\r
-\r
-    //for sms or ussd bearer\r
-    service:array[1..21] of char;\r
-    isIP:integer;\r
-\r
-    //for ussd bearer\r
-    code:array[1..11] of char;\r
-  end;\r
-  PGSM_WAPSettings=^GSM_WAPSettings;\r
-\r
-const\r
-  WAPSETTINGS_BEARER_SMS=0;\r
-  WAPSETTINGS_BEARER_DATA=1;\r
-  WAPSETTINGS_BEARER_USSD=2;\r
-\r
-const\r
-  GSM_CDV_Busy       = 1; // Divert when busy\r
-  GSM_CDV_NoAnswer   = 2; // Divert when not answered\r
-  GSM_CDV_OutOfReach = 3; // Divert when phone off or no coverage\r
-  GSM_CDV_AllTypes   = 4; // Divert all calls without ringing\r
-\r
-  GSM_CDV_VoiceCalls = 1;\r
-  GSM_CDV_FaxCalls   = 2;\r
-  GSM_CDV_DataCalls  = 3;\r
-  GSM_CDV_AllCalls   = 4;\r
-\r
-  GSM_CDV_Disable  = 0;\r
-  GSM_CDV_Enable   = 1;\r
-  GSM_CDV_Query    = 2; // Is concrete divert enabled ?\r
-  GSM_CDV_Register = 3; // Sets divert\r
-  GSM_CDV_Erasure  = 4; // Erase concrete divert\r
-\r
-type\r
-  GSM_CallDivert=record\r
-    DType:integer;\r
-    CType:integer;\r
-    Operation:integer;\r
-    Number:array[1..41] of char;\r
-    timeout:longword;\r
-    enabled:integer;\r
-  end;\r
-  PGSM_CallDivert=^GSM_CallDivert;\r
-\r
-var\r
-  GSMPhoneConnected: boolean=false;\r
-  GSMNetworkInfo: GSM_NetworkInfo;\r
-\r
-  GSMPort: array[1..256] of Char;\r
-  GSMModel: array[1..256] of Char;\r
-  GSMInitLength: Array[1..256] of char;\r
-  GSMSynchronizeTime: array[1..256] of char;\r
-  GSMConnection: integer=GCT_FBUS;\r
-\r
-type\r
-  TSparkyThread = class(TThread)\r
-    public\r
-      procedure Execute; override;\r
-  end;\r
-\r
-var\r
-  SparkyThread: TSparkyThread;\r
-\r
-function GSM_Initialize(Port:Pchar;Model:Pchar;connectiontype:integer): integer; stdcall; external 'gnokiiapi.dll' name 'myinitialize';\r
-function GSM_Terminate(): integer; stdcall; external 'gnokiiapi.dll' name 'myterminate';\r
-\r
-function GSM_GetNetworkInfo(NetworkInfo:PGSM_NetworkInfo): integer; stdcall; external 'gnokiiapi.dll' name 'mygetnetworkinfo';\r
-function GSM_GetNetworkName(NetworkName:Pchar;NetworkCode:Pchar): integer; stdcall; external 'gnokiiapi.dll' name 'mygetnetworkname';\r
-function GSM_GetNetworkCode(NetworkName:Pchar;NetworkCode:Pchar): integer; stdcall; external 'gnokiiapi.dll' name 'mygetnetworkcode';\r
-function GSM_GetNetworkData(number:integer; NetworkName:Pchar;NetworkCode:Pchar): integer; stdcall; external 'gnokiiapi.dll' name 'mygetnetworkdata';\r
-\r
-function GSM_Netmonitor(mode:integer;Screen:Pchar): integer; stdcall; external 'gnokiiapi.dll' name 'mynetmonitor';\r
-\r
-function GSM_GetMemoryLocation(entry:PGSM_Phonebookentry): integer; stdcall; external 'gnokiiapi.dll' name 'mygetmemorylocation';\r
-function GSM_WritePhonebookLocation(entry:PGSM_Phonebookentry): integer; stdcall; external 'gnokiiapi.dll' name 'mywritephonebooklocation';\r
-function GSM_GetMemoryStatus(status:PGSM_MemoryStatus): integer; stdcall; external 'gnokiiapi.dll' name 'mygetmemorystatus';\r
-\r
-function GSM_ReadRingtoneFile(filename:Pchar;ringtone:PGSM_Ringtone): integer; stdcall; external 'gnokiiapi.dll' name 'myreadringtonefile';\r
-function GSM_SetRingtone(ringtone:PGSM_Ringtone;notes:Pinteger): integer; stdcall; external 'gnokiiapi.dll' name 'mysetringtone';\r
-function GSM_ReadBinRingtoneFile(filename:Pchar;ringtone:PGSM_BinRingtone): integer; stdcall; external 'gnokiiapi.dll' name 'myreadbinringtonefile';\r
-function GSM_SetBinRingtone(ringtone:PGSM_BinRingtone): integer; stdcall; external 'gnokiiapi.dll' name 'mysetbinringtone';\r
-function GSM_PlayRingtone(ringtone:PGSM_Ringtone): integer; stdcall; external 'gnokiiapi.dll' name 'myplayringtone';\r
-function GSM_PlayNote(note:GSM_RingtoneNote): integer; stdcall; external 'gnokiiapi.dll' name 'myplaynote';\r
-function GSM_PlayTone(herz:integer;volume:byte): integer; stdcall; external 'gnokiiapi.dll' name 'myplaytone';\r
-function GSM_GetTempo(beats:integer): integer; stdcall; external 'gnokiiapi.dll' name 'mygettempo';\r
-\r
-function GSM_ReadBitmapFile(filename:Pchar;bitmap:PGSM_Bitmap): integer; stdcall; external 'gnokiiapi.dll' name 'myreadbitmapfile';\r
-function GSM_SaveBitmapFile(filename:Pchar;bitmap:PGSM_Bitmap): integer; stdcall; external 'gnokiiapi.dll' name 'mysavebitmapfile';\r
-function GSM_IsPointBitmap(bitmap:PGSM_Bitmap;x:integer;y:integer): integer; stdcall; external 'gnokiiapi.dll' name 'myispointbitmap';\r
-function GSM_SetPointBitmap(bitmap:PGSM_Bitmap;x:integer;y:integer): integer; stdcall; external 'gnokiiapi.dll' name 'mysetpointbitmap';\r
-function GSM_ClearPointBitmap(bitmap:PGSM_Bitmap;x:integer;y:integer): integer; stdcall; external 'gnokiiapi.dll' name 'myclearpointbitmap';\r
-function GSM_ClearBitmap(bitmap:PGSM_Bitmap): integer; stdcall; external 'gnokiiapi.dll' name 'myclearbitmap';\r
-function GSM_GetBitmap(bitmap:PGSM_Bitmap): integer; stdcall; external 'gnokiiapi.dll' name 'mygetbitmap';\r
-function GSM_SetBitmap(bitmap:PGSM_Bitmap): integer; stdcall; external 'gnokiiapi.dll' name 'mysetbitmap';\r
-function GSM_ResizeBitmap(bitmap:PGSM_Bitmap;bitmaptype:integer): integer; stdcall; external 'gnokiiapi.dll' name 'myresizebitmap';\r
-\r
-function GSM_GetImei(IMEI:Pchar): integer; stdcall; external 'gnokiiapi.dll' name 'mygetimei';\r
-function GSM_GetRevision(revision:Pchar): integer; stdcall; external 'gnokiiapi.dll' name 'mygetrevision';\r
-function GSM_GetModel(model:Pchar): integer; stdcall; external 'gnokiiapi.dll' name 'mygetmodel';\r
-function GSM_GetModelNumber(model:Pchar;model2:Pchar): integer; stdcall; external 'gnokiiapi.dll' name 'mygetmodelnumber';\r
-\r
-function GSM_GetDLLVersion(version:Pchar): integer; stdcall; external 'gnokiiapi.dll' name 'mygetdllversion';\r
-\r
-function GSM_GetSpeedDial(entry:PGSM_SpeedDial): integer; stdcall; external 'gnokiiapi.dll' name 'mygetspeeddial';\r
-\r
-function GSM_Reset(mode:byte): integer; stdcall; external 'gnokiiapi.dll' name 'myreset';\r
-\r
-function GSM_GetCalendarNote(entry:PGSM_CalendarNote): integer; stdcall; external 'gnokiiapi.dll' name 'mygetcalendarnote';\r
-function GSM_WriteCalendarNote(entry:PGSM_CalendarNote): integer; stdcall; external 'gnokiiapi.dll' name 'mywritecalendarnote';\r
-function GSM_DeleteCalendarNote(entry:PGSM_CalendarNote): integer; stdcall; external 'gnokiiapi.dll' name 'mydeletecalendarnote';\r
-\r
-function GSM_GetAlarm(alarmnumber:integer;alarm:PGSM_DateTime): integer; stdcall; external 'gnokiiapi.dll' name 'mygetalarm';\r
-\r
-function GSM_GetSMSCenter(center:PGSM_MessageCenter): integer; stdcall; external 'gnokiiapi.dll' name 'mygetsmscenter';\r
-function GSM_SetSMSCenter(center:PGSM_MessageCenter): integer; stdcall; external 'gnokiiapi.dll' name 'mysetsmscenter';\r
-\r
-function GSM_GetProfile(profile:PGSM_Profile): integer; stdcall; external 'gnokiiapi.dll' name 'mygetprofile';\r
-\r
-function GSM_GetSimlock(simlock:PGSM_AllSimlocks): integer; stdcall; external 'gnokiiapi.dll' name 'mygetsimlock';\r
-\r
-function GSM_GetSMSFolders(folders:PGSM_SMSFolders): integer; stdcall; external 'gnokiiapi.dll' name 'mygetsmsfolders';\r
-function GSM_GetSMSMessage(sms:PGSM_SMSMessage): integer; stdcall; external 'gnokiiapi.dll' name 'mygetsmsmessage';\r
-function GSM_SaveSMSMessage(sms:PGSM_SMSMessage): integer; stdcall; external 'gnokiiapi.dll' name 'mysavesmsmessage';\r
-function GSM_SendSMSMessage(sms:PGSM_SMSMessage): integer; stdcall; external 'gnokiiapi.dll' name 'mysendsmsmessage';\r
-function GSM_DeleteSMSMessage(sms:PGSM_SMSMessage): integer; stdcall; external 'gnokiiapi.dll' name 'mydeletesmsmessage';\r
-function GSM_GetSMSStatus(folders:PGSM_SMSStatus): integer; stdcall; external 'gnokiiapi.dll' name 'mygetsmsstatus';\r
-function GSM_MakeMultiPartSMS2(SMS:PGSM_MultiSMSMessage;MessageBuffer:PByte;MessageLength:Integer;UDHType:integer;Coding:integer): integer; stdcall; external 'gnokiiapi.dll' name 'mymakemultipartsms2';\r
-\r
-function GSM_SaveRingtoneToSMS(SMS:PGSM_MultiSMSMessage;ringtone:PGSM_Ringtone;profilestyle:integer): integer; stdcall; external 'gnokiiapi.dll' name 'mysaveringtonetosms';\r
-function GSM_SaveCalendarNoteToSMS(SMS:PGSM_MultiSMSMessage;note:PGSM_CalendarNote): integer; stdcall; external 'gnokiiapi.dll' name 'mysavecalendarnotetosms';\r
-function GSM_SaveBitmapToSMS(SMS:PGSM_MultiSMSMessage;bitmap:PGSM_Bitmap;ScreenSaver:integer;Unicode:integer): integer; stdcall; external 'gnokiiapi.dll' name 'mysavebitmaptosms';\r
-function GSM_SavePhonebookEntryToSMS(SMS:PGSM_MultiSMSMessage;entry:PGSM_PhonebookEntry;version:integer): integer; stdcall; external 'gnokiiapi.dll' name 'mysavephonebookentrytosms';\r
-function GSM_SaveWAPBookmarkToSMS(SMS:PGSM_MultiSMSMessage;bookmark:PGSM_WAPBookmark): integer; stdcall; external 'gnokiiapi.dll' name 'mysavewapbookmarktosms';\r
-function GSM_SaveWAPSettingsToSMS(SMS:PGSM_MultiSMSMessage;settings:PGSM_WAPSettings): integer; stdcall; external 'gnokiiapi.dll' name 'mysavewapsettingstosms';\r
-\r
-function GSM_ReadConfig(model:Pchar;port:Pchar;initlength:Pchar;connection:Pinteger;synchronizetime:Pchar): integer; stdcall; external 'gnokiiapi.dll' name 'myreadconfig';\r
-\r
-function GSM_SetLocale(locale:pchar): integer; stdcall; external 'gnokiiapi.dll' name 'mysetlocale';\r
-\r
-function GSM_GetSecurityCode(code:PGSM_SecurityCode): integer; stdcall; external 'gnokiiapi.dll' name 'mygetsecuritycode';\r
-\r
-function GSM_GetModelFeature(featurenumber:integer): integer; stdcall; external 'gnokiiapi.dll' name 'mygetmodelfeature';\r
-\r
-function GSM_GetWAPBookmark(bookmark:PGSM_WAPBookmark): integer; stdcall; external 'gnokiiapi.dll' name 'mygetwapbookmark';\r
-function GSM_SetWAPBookmark(bookmark:PGSM_WAPBookmark): integer; stdcall; external 'gnokiiapi.dll' name 'mysetwapbookmark';\r
-\r
-function GSM_GetWAPSettings(settings:PGSM_WAPSettings): integer; stdcall; external 'gnokiiapi.dll' name 'mygetwapsettings';\r
-\r
-function GSM_CallDivertOperation(divert:PGSM_CallDivert): integer; stdcall; external 'gnokiiapi.dll' name 'mycalldivert';\r
-\r
-implementation\r
-\r
-procedure TSparkyThread.Execute;\r
-begin\r
-  while not Terminated do\r
-  begin\r
-    if GSMPhoneConnected then\r
-    begin\r
-      if GSM_GetNetworkInfo(@GSMNetworkInfo)<>0 then\r
-      begin\r
-        GSMPhoneConnected:=false;\r
-        GSM_Terminate();\r
-      end else begin\r
-        if not SparkyThread.Suspended then SparkyThread.Suspend;\r
-      end;\r
-    end else\r
-    begin\r
-      if GSM_Initialize(@GSMPort,@GSMModel,GSMConnection)=0 then\r
-      begin\r
-        GSMPhoneConnected:=true;\r
-      end else\r
-        GSM_Terminate();\r
-    end;\r
-  end;\r
-  GSMPhoneConnected:=false;\r
-end;\r
-\r
-begin\r
-  GSM_ReadConfig(@GSMmodel,@GSMport,@GSMinitlength,@GSMconnection,@GSMsynchronizetime);\r
-  GSM_SetLocale('.1250');\r
-  GSMPhoneConnected:=false;\r
-  SparkyThread:=TSparkyThread.Create(True);\r
-  SparkyThread.Priority:=tpIdle;\r
-//  SparkyThread.Priority:=tpLowest;\r
-  SparkyThread.Resume;\r
-end.\r