Skip to content

Commit

Permalink
ACP
Browse files Browse the repository at this point in the history
1) Version number now comes from the version string which is generated at build time
2) Fix quit menu option

Express
1) Version number now comes from the version string which is generated at build time
2) Allow multiple file attachments to messages
3) Disable history buffer when editing messages
4) Return default language as 'txt' (Fix FR ? bug in Aquascan)
5) Fix lock not being freed on message attachment folder
6) Fix wildcard flagging and downloading
7) Zmodem optimisations/improvements
8) Fix zmodem completion calculation when file is large
9) Interal zmodem actual & estimated times now in hh:mm:ss format
10) Account Editor phone number not updating correctly
11) Update copyright to include 2020
  • Loading branch information
dmcoles committed Apr 23, 2020
1 parent 78ba9a2 commit 97002ac
Show file tree
Hide file tree
Showing 8 changed files with 724 additions and 455 deletions.
33 changes: 29 additions & 4 deletions ACP.e
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,8 @@
MODULE '*axcommon',
'*jsonParser',
'*jsonCreate',
'*stringlist'
'*stringlist',
'*acpversion'

/*
'Setup'
Expand Down Expand Up @@ -328,6 +329,7 @@ DEF activeNodes[MAX_NODES]:ARRAY OF CHAR
DEF publicName[200]:STRING
DEF pens[9]:ARRAY OF INT
DEF myVerStr[255]:STRING
DEF myBuildStr[255]:STRING
DEF myappport=NIL:PTR TO mp
DEF doMultiCom

Expand Down Expand Up @@ -1011,7 +1013,7 @@ PROC createCustomMenus(nodes)

maddItem( NM_TITLE, 'Project', 0 , 0, 0, 0)
maddItem( NM_ITEM, 'About',0,0,0,0)
StringF(version,' AmiExpress Professional \s',myVerStr)
StringF(version,' AmiExpress Professional \s (\s)',myVerStr,myBuildStr)
maddItem( NM_SUB,version,0,0,0,0)
maddItem( NM_SUB,' Written by Darren Coles ',0,0,0,0)

Expand Down Expand Up @@ -3422,6 +3424,29 @@ PROC setSingleFDS(socketVal)
fds[n]:=fds[n] OR (Shl(1,socketVal AND 31))
ENDPROC

PROC updateVersion(expVer:PTR TO CHAR,expDate:PTR TO CHAR)
DEF v,p
DEF y,m,d
DEF tmp[4]:STRING

v:=getBuild()
p:=InStr(v,' ')
IF p>=0
StrCopy(expVer,v,p)
v:=v+p+1
StrCopy(tmp,v,4)
y:=Val(tmp)
StrCopy(tmp,v+4,2)
m:=Val(tmp)
StrCopy(tmp,v+6,2)
d:=Val(tmp)
StringF(expDate,'\d[2]-\s[3]-\d[4]',d,'JanFebMarAprMayJunJulAugSepOctNovDec'+((m-1)*3),y)
ELSE
StrCopy(expVer,v,ALL)
StrCopy(expDate,'',ALL)
ENDIF
ENDPROC

PROC main() HANDLE

DEF iconStartName[200]:STRING
Expand Down Expand Up @@ -3461,7 +3486,7 @@ PROC main() HANDLE

KickVersion(37) -> E-Note: requires V37

StringF(myVerStr,'v5.3.0')
updateVersion(myVerStr,myBuildStr)

FOR i:=0 TO MAX_NODES-1
ndUser[i]:=NIL
Expand Down Expand Up @@ -3959,7 +3984,7 @@ PROC main() HANDLE
handleEditGadget(im,0)
CASE MENUPICK
->quit menu item
IF(menunum(im.code)=0) AND (itemnum(im.code)=6) THEN attemptShutdown()
IF(menunum(im.code)=0) AND (itemnum(im.code)=5) THEN attemptShutdown()

IF(menunum(im.code)=1)
i:=button
Expand Down
38 changes: 0 additions & 38 deletions MiscFuncs.e
Original file line number Diff line number Diff line change
Expand Up @@ -176,25 +176,6 @@ EXPORT PROC removeCR(str:PTR TO CHAR)
SetStr(str,n)
ENDPROC

EXPORT PROC stcsma(s: PTR TO CHAR,p: PTR TO CHAR)
DEF ret,len
DEF buf

len:=StrLen(p)*2+2
buf:=New(len)

IF(buf=NIL)
ret:=0
ELSE
IF (ParsePatternNoCase(p, buf, len) < 0)
ret:=0
ELSE
ret:=MatchPatternNoCase(buf, s)
ENDIF
ENDIF
Dispose(buf)
ENDPROC ret

EXPORT PROC formatSpaceValue(spaceInKB,outstr)
DEF frac,whole
IF (spaceInKB<10240)
Expand Down Expand Up @@ -224,25 +205,6 @@ EXPORT PROC formatUnsignedLong(val,outStr)
END outputTxt
EXPORT ENDPROC

EXPORT PROC formatBCD(valArrayBCD:PTR TO CHAR, outStr)
DEF tempStr[2]:STRING
DEF i,n,start=FALSE

StrCopy(outStr,'')
FOR i:=0 TO 7
n:=valArrayBCD[i]
IF (n<>0) OR (start) OR (i=7)
IF (start) OR (n>=$10)
StringF(tempStr,'\d\d',Shr(n AND $F0,4),n AND $F)
ELSE
StringF(tempStr,'\d',n AND $F)
ENDIF
StrAdd(outStr,tempStr)
start:=TRUE
ENDIF
ENDFOR
ENDPROC

EXPORT PROC formatLongDate(cDateVal,outDateStr)
DEF d : PTR TO datestamp
DEF dt : datetime
Expand Down
111 changes: 111 additions & 0 deletions VerInfoGen.e
Original file line number Diff line number Diff line change
@@ -0,0 +1,111 @@
->Ami-Express verison info

MODULE 'dos/dos','dos/datetime'

PROC getBuildDateString(buildString:PTR TO CHAR)
DEF dt : datetime
DEF datestr[10]:STRING
DEF timestr[10]:STRING

DateStamp(dt.stamp)
dt.format:=FORMAT_USA
dt.flags:=0
dt.strday:=0
dt.strdate:=datestr
dt.strtime:=timestr
IF DateToStr(dt)
StringF(buildString,'\s[2]\s[2]\s[2]\s[2]\s[2]\s[2]\s[2]',IF dt.stamp.days>=8035 THEN '20' ELSE '19',datestr+6,datestr,datestr+3,timestr,timestr+3,timestr+6)
RETURN TRUE
ENDIF
StrCopy(buildString,'')
ENDPROC FALSE

PROC fileWriteLine(fh,line)
DEF l
l:=EstrLen(line)
IF Write(fh,line,l)<>l
WriteF('Error writing to file\n')
Close(fh)
RETURN FALSE
ENDIF
ENDPROC TRUE

PROC main()
DEF myargs:PTR TO LONG,rdargs
DEF outFile[255]:STRING
DEF programName[255]:STRING
DEF versionString[255]:STRING
DEF tempstr[255]:STRING
DEF p:PTR TO LONG
DEF buildNumber=0
DEF buildString[255]:STRING
DEF useDate=FALSE
DEF fh

WriteF('Version Info generator - V1.0 (c)2020 Darren Coles\n\n')

myargs:=[0,0,0,0,0]:LONG
IF rdargs:=ReadArgs('FILE/A,PROGRAM/A,VERSION/A,BUILD/N,USEDATE/S',myargs,NIL)
IF myargs[0]<>NIL
StrCopy(outFile,myargs[0],255)
ENDIF
IF myargs[1]<>NIL
StrCopy(programName,myargs[1],255)
ENDIF
IF myargs[2]<>NIL
StrCopy(versionString,myargs[2],255)
ENDIF
IF myargs[3]<>NIL
p:=myargs[3]
buildNumber:=p[]
ENDIF
IF myargs[4]<>NIL
useDate:=TRUE
ENDIF
FreeArgs(rdargs)
ELSE
WriteF('required argument missing\n')
RETURN
ENDIF

IF useDate
getBuildDateString(buildString)
ELSE
StringF(buildString,'\d',buildNumber)
ENDIF

fh:=Open(outFile,MODE_NEWFILE)
IF fh=0
WriteF('unable to open \s for writing\n',outFile)
RETURN
ENDIF

StrCopy(tempstr,'->Version data\n')
IF fileWriteLine(fh,tempstr)=FALSE THEN RETURN

StrCopy(tempstr,'OPT MODULE\n\n')
IF fileWriteLine(fh,tempstr)=FALSE THEN RETURN

StrCopy(tempstr,'EXPORT PROC getBuild()\n')
IF fileWriteLine(fh,tempstr)=FALSE THEN RETURN

StrCopy(tempstr,'LEA verdata(PC),A0\n')
IF fileWriteLine(fh,tempstr)=FALSE THEN RETURN

StringF(tempstr,'LEA \d(A0),A0\n',EstrLen(programName)+7)
IF fileWriteLine(fh,tempstr)=FALSE THEN RETURN

StrCopy(tempstr,'MOVE.L A0,D0\n')
IF fileWriteLine(fh,tempstr)=FALSE THEN RETURN

StrCopy(tempstr,'ENDPROC D0\n')
IF fileWriteLine(fh,tempstr)=FALSE THEN RETURN

StrCopy(tempstr,'verdata:\n')
IF fileWriteLine(fh,tempstr)=FALSE THEN RETURN

StringF(tempstr,' CHAR ''$VER: \s \s \s'',0\n',programName,versionString,buildString)
IF fileWriteLine(fh,tempstr)=FALSE THEN RETURN

Close(fh)
ENDPROC
Loading

0 comments on commit 97002ac

Please sign in to comment.