project_files/hwc/rtl/SysUtils.h
author sheepluva
Mon, 05 Aug 2019 00:20:45 +0200
changeset 15300 f382ec6dba11
parent 14918 68e1783762bc
permissions -rw-r--r--
In hindsight my emscripten-ifdef (70d416a8f63f) is nonsense. As fpcrtl_glShaderSource() would not be defined and lead to compiling issues. So either it's 3 ifdefs (in pas2cRedo, pas2cSystem and misc.c), in order to toggle between fpcrtl_ and the native function, or alternatively have no ifdef for it at all. I'm going with none at all, which means emscripten will compile with the original (const) function prototype, being wrapped by the fpcrtl_ function, same as non-emscripten builds.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
10015
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
     1
#ifndef _FPCRTL_SYSUTILS_H_
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
     2
#define _FPCRTL_SYSUTILS_H_
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
     3
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
     4
#include "Types.h"
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
     5
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
     6
// EFFECTS: return the current date time in pascal notation
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
     7
//          http://www.merlyn.demon.co.uk/del-prgg.htm#TDT
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
     8
TDateTime   fpcrtl_now();
14918
68e1783762bc Pas2C: Support FileSize and Delete; add dummy implementation of FormatDateTime
Wuzzy <Wuzzy2@mail.ru>
parents: 10564
diff changeset
     9
#define     fpcrtl_Now              fpcrtl_now
68e1783762bc Pas2C: Support FileSize and Delete; add dummy implementation of FormatDateTime
Wuzzy <Wuzzy2@mail.ru>
parents: 10564
diff changeset
    10
#define     now                     fpcrtl_Now
68e1783762bc Pas2C: Support FileSize and Delete; add dummy implementation of FormatDateTime
Wuzzy <Wuzzy2@mail.ru>
parents: 10564
diff changeset
    11
#define     Now                     fpcrtl_Now
68e1783762bc Pas2C: Support FileSize and Delete; add dummy implementation of FormatDateTime
Wuzzy <Wuzzy2@mail.ru>
parents: 10564
diff changeset
    12
68e1783762bc Pas2C: Support FileSize and Delete; add dummy implementation of FormatDateTime
Wuzzy <Wuzzy2@mail.ru>
parents: 10564
diff changeset
    13
string255   fpcrtl_formatDateTime(string255 FormatStr, TDateTime DateTime);
68e1783762bc Pas2C: Support FileSize and Delete; add dummy implementation of FormatDateTime
Wuzzy <Wuzzy2@mail.ru>
parents: 10564
diff changeset
    14
#define     fpcrtl_FormatDateTime   fpcrtl_formatDateTime
10015
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    15
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    16
// EFFECTS: return the current time
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    17
//          http://www.merlyn.demon.co.uk/del-prgg.htm#TDT
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    18
TDateTime   fpcrtl_time();
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    19
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    20
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    21
// EFFECTS: return the current date
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    22
//          http://www.merlyn.demon.co.uk/del-prgg.htm#TDT
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    23
TDateTime   fpcrtl_date();
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    24
#define     date                    fpcrtl_date
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    25
#define     Date                    fpcrtl_date
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    26
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    27
// EFFECTS: Trim strips blank characters (spaces) at the beginning and end of S
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    28
// and returns the resulting string. Only #32 characters are stripped.
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    29
// If the string contains only spaces, an empty string is returned.
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    30
string255   fpcrtl_trim(string255 s);
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    31
#define     trim                    fpcrtl_trim
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    32
#define     Trim                    fpcrtl_trim
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    33
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    34
Integer     fpcrtl_strToInt(string255 s);
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    35
#define     StrToInt                fpcrtl_strToInt
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    36
#define     strToInt                fpcrtl_strToInt
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    37
10564
0cb20aa8877a more fixing and allow pas2c to run tests. they will still fail though - engine does not exit with the specified exit codes, also data types are messed up
sheepluva
parents: 10015
diff changeset
    38
string255   fpcrtl_extractFileDir(string255 f);
0cb20aa8877a more fixing and allow pas2c to run tests. they will still fail though - engine does not exit with the specified exit codes, also data types are messed up
sheepluva
parents: 10015
diff changeset
    39
#define     fpcrtl_ExtractFileDir  fpcrtl_extractFileDir
0cb20aa8877a more fixing and allow pas2c to run tests. they will still fail though - engine does not exit with the specified exit codes, also data types are messed up
sheepluva
parents: 10015
diff changeset
    40
10015
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    41
string255   fpcrtl_extractFileName(string255 f);
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    42
#define     fpcrtl_ExtractFileName  fpcrtl_extractFileName
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    43
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    44
string255   fpcrtl_strPas(PChar);
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    45
#define     fpcrtl_StrPas           fpcrtl_strPas
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    46
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    47
4feced261c68 partial merge of the webgl branch
koda
parents: 8047
diff changeset
    48
#endif