home *** CD-ROM | disk | FTP | other *** search
- /********************************************************************************
- * << AUTO HEADER XDME >>
- ********************************************************************************
- ED "EDG"
- EC "EC"
- PREPRO "EPP"
- SOURCE "ReadTMFile.e"
- EPPDEST "RTM_EPP.e"
- EXEC "ReadTM"
- ISOURCE " "
- HSOURCE " "
- ERROREC " "
- ERROREPP " "
- VERSION "0"
- REVISION "0"
- NAMEPRG "ReadTM"
- NAMEAUTHOR "NasG√l"
- ********************************************************************************
- * HISTORY :
- *******************************************************************************/
-
- OPT OSVERSION=37
-
- CONST DEBUG=TRUE
-
- CONST BUFSIZE=65536,
- ID_PREF=$50524546,
- ID_TMEX=$544D4558,
- ID_TMIM=$544D494D,
- ID_TMSO=$544D534F,
- ID_TMMO=$544D4D4F,
- ID_TMIC=$544D4943,
- ID_TMDO=$544D444F,
- ID_TMAC=$544D4143
-
-
-
- ENUM ER_NONE,ER_BADARGS,ER_NOTMFILE
-
- MODULE 'tm'
- PROC tm_ReadTMFile(source) /*"tm_ReadBINFile(source)"*/
- DEF len,a,adr,buf,handle,flen=TRUE,pos
- DEF chunk,long
- /*****************************************/
- /* Stockage du fichier source dans buf */
- /*****************************************/
- IF (flen:=FileLength(source))=-1 THEN RETURN FALSE
- IF (buf:=New(flen+1))=NIL THEN RETURN FALSE
- IF (handle:=Open(source,1005))=NIL THEN RETURN FALSE
- len:=Read(handle,buf,flen)
- Close(handle)
- IF len<1 THEN RETURN FALSE
- adr:=buf
- chunk:=Long(adr)
- /*
- IF chunk<>ID_FORM
- WriteF('ce n\aest pas un fichier IFF.\n')
- Dispose(buf)
- RETURN FALSE
- ENDIF
- */
- /***********/
- /* Lecture */
- /***********/
- FOR a:=0 TO len-1
- pos:=adr++
- chunk:=Long(pos)
- SELECT chunk
- CASE ID_PREF
- WriteF('ID_PREF.\n')
- CASE ID_TMEX
- long:=Long(pos+4)
- WriteF('ID_TMEX. Longueur :\d\n',long)
- tm_ReadTMExec(pos+8)
- CASE ID_TMIM
- WriteF('ID_TMIM. Longueur :\d\n',long)
- tm_ReadTMImage(pos+8)
- CASE ID_TMSO
- WriteF('ID_TMSO.\n')
- tm_ReadTMSound(pos+8)
- CASE ID_TMMO
- WriteF('ID_TMMO.\n')
- tm_ReadTMMenu(pos+8)
- CASE ID_TMIC
- WriteF('ID_TMIC.\n')
- tm_ReadTMIcon(pos+8)
- CASE ID_TMDO
- WriteF('ID_TMDO.\n')
- tm_ReadTMDock(pos+8)
- CASE ID_TMAC
- WriteF('ID_TMAC.\n')
- ENDSELECT
- ENDFOR
- Dispose(buf)
- ENDPROC
- PROC tm_ReadTMExec(my_execp:PTR TO execprefsobject) /*"ReadTMExec(my_execp:PTR TO execprefsobject)"*/
- DEF buffer
- DEF pv[256]:STRING
- WriteF('StringBits:\d Flags:\d Delay:\d Stack:\d ExecType:\d Pri:\d\n',my_execp.stringbits,my_execp.flags,my_execp.delay,my_execp.stack,my_execp.exectype,my_execp.priority)
- buffer:=my_execp+20
- IF (my_execp.stringbits AND EXPO_NAME)
- StringF(pv,'\s',buffer)
- WriteF('EXPO_NAME :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- IF (my_execp.stringbits AND EXPO_COMMAND)
- StringF(pv,'\s',buffer)
- WriteF('EXPO_COMMAND :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- IF (my_execp.stringbits AND EXPO_CURDIR)
- StringF(pv,'\s',buffer)
- WriteF('EXPO_CURDIR :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- IF (my_execp.stringbits AND EXPO_HOTKEY)
- StringF(pv,'\s',buffer)
- WriteF('EXPO_HOTKEY :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- IF (my_execp.stringbits AND EXPO_OUTPUT)
- StringF(pv,'\s',buffer)
- WriteF('EXPO_OUTPUT :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- IF (my_execp.stringbits AND EXPO_PATH)
- StringF(pv,'\s',buffer)
- WriteF('EXPO_PATH :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- IF (my_execp.stringbits AND EXPO_PSCREEN)
- StringF(pv,'\s',buffer)
- WriteF('EXPO_PSCREEN :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- IF (my_execp.flags AND EXPOF_ARGS) THEN NOP
- IF (my_execp.flags AND EXPOF_TOFRONT) THEN NOP
- WriteF('\n')
- ENDPROC
- PROC tm_ReadTMImage(my_imagep:PTR TO imageprefsobject) /*"ReadTMImage(my_imagep:PTR TO imageprefsobject)"*/
- DEF buffer
- DEF pv[256]:STRING
- WriteF('StringBits:\d ',my_imagep.stringbits)
- buffer:=my_imagep+4
- IF (my_imagep.stringbits AND IMPO_NAME)
- StringF(pv,'\s',buffer)
- WriteF('IMPO_NAME :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- IF (my_imagep.stringbits AND IMPO_FILE)
- StringF(pv,'\s',buffer)
- WriteF('IMPO_FILE :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- WriteF('\n')
- ENDPROC
- PROC tm_ReadTMSound(my_soundp:PTR TO soundprefsobject) /*"ReadTMSound(my_soundp:PTR TO soundprefsobject)"*/
- DEF buffer
- DEF pv[256]:STRING
- WriteF('StringBits:\d ',my_soundp.stringbits)
- buffer:=my_soundp+4
- IF (my_soundp.stringbits AND SOPO_NAME)
- StringF(pv,'\s',buffer)
- WriteF('SOPO_NAME :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- IF (my_soundp.stringbits AND SOPO_COMMAND)
- StringF(pv,'\s',buffer)
- WriteF('SOPO_COMMAND :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- IF (my_soundp.stringbits AND SOPO_PORT)
- StringF(pv,'\s',buffer)
- WriteF('SOPO_COMMAND :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- WriteF('\n')
- ENDPROC
- PROC tm_ReadTMMenu(my_menup:PTR TO menuprefsobject) /*"ReadTMMenu(my_menup:PTR TO menuprefsobject)"*/
- DEF buffer
- DEF pv[256]:STRING
- WriteF('StringBits:\d ',my_menup.stringbits)
- buffer:=my_menup+4
- IF (my_menup.stringbits AND MOPO_NAME)
- StringF(pv,'\s',buffer)
- WriteF('MOPO_NAME :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- IF (my_menup.stringbits AND MOPO_EXEC)
- StringF(pv,'\s',buffer)
- WriteF('MOPO_EXEC :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- IF (my_menup.stringbits AND MOPO_SOUND)
- StringF(pv,'\s',buffer)
- WriteF('SOPO_COMMAND :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- WriteF('\n')
- ENDPROC
- PROC tm_ReadTMIcon(my_iconp:PTR TO iconprefsobject) /*"ReadTMIcon(my_iconp:PTR TO iconprefsobject)"*/
- DEF buffer
- DEF pv[256]:STRING
- WriteF('StringBits:\d Flags :\d ',my_iconp.stringbits,my_iconp.flags)
- buffer:=my_iconp+16
- IF (my_iconp.stringbits AND ICPO_NAME)
- StringF(pv,'\s',buffer)
- WriteF('ICPO_NAME :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- IF (my_iconp.stringbits AND ICPO_EXEC)
- StringF(pv,'\s',buffer)
- WriteF('ICPO_EXEC :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- IF (my_iconp.stringbits AND ICPO_IMAGE)
- StringF(pv,'\s',buffer)
- WriteF('ICPO_IMAGE :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- IF (my_iconp.stringbits AND ICPO_SOUND)
- StringF(pv,'\s',buffer)
- WriteF('ICPO_SOUND :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- IF (my_iconp.flags AND ICPOF_SHOWNAME) THEN NOP
- WriteF('\n')
- ENDPROC
- PROC tm_ReadTMDock(my_dockp:PTR TO dockprefsobject) /*"ReadTMDock(my_dockp:PTR TO dockprefsobject)"*/
- DEF buffer
- DEF pv[256]:STRING
- DEF tf
- DEF quit=FALSE
- WriteF('StringBits:\d Flags:\d Xpos:\d Ypos:\d Col:\d ',my_dockp.stringbits,my_dockp.flags,my_dockp.xpos,my_dockp.ypos,my_dockp.columns)
- buffer:=my_dockp+SIZEOF dockprefsobject
- IF (my_dockp.stringbits AND DOPO_NAME)
- StringF(pv,'\s',buffer)
- WriteF('DOPO_NAME :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- IF (my_dockp.stringbits AND DOPO_HOTKEY)
- StringF(pv,'\s',buffer)
- WriteF('DOPO_HOTKEY :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- IF (my_dockp.stringbits AND DOPO_PSCREEN)
- StringF(pv,'\s',buffer)
- WriteF('DOPO_PSCREEN :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- IF (my_dockp.stringbits AND DOPO_TITLE)
- StringF(pv,'\s',buffer)
- WriteF('DOPO_TITLE :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- IF (my_dockp.stringbits AND DOPO_FONTNAME)
- StringF(pv,'\s',buffer)
- WriteF('DOPO_FONTNAME :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- REPEAT
- tf:=Char(buffer)
- IF (tf AND DOPOT_EXEC)
- StringF(pv,'\s',buffer)
- WriteF('DOPOT_EXEC :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- IF (tf AND DOPOT_IMAGE)
- StringF(pv,'\s',buffer)
- WriteF('DOPOT_IMAGE :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- IF (tf AND DOPOT_SOUND)
- StringF(pv,'\s',buffer)
- WriteF('DOPOT_SOUND :\s ',pv)
- buffer:=buffer+EstrLen(pv)+1
- ENDIF
- UNTIL tf=0
- IF (my_dockp.flags AND DOPOF_ACTIVATED) THEN WriteF('DOPOF_ACTIVATED ')
- IF (my_dockp.flags AND DOPOF_CENTERED) THEN WriteF('DOPOF_CENTERED ')
- IF (my_dockp.flags AND DOPOF_FRONTMOST) THEN WriteF('DOPOF_FRONTMOST ')
- IF (my_dockp.flags AND DOPOF_MENU) THEN WriteF('DOPOF_MENU ')
- IF (my_dockp.flags AND DOPOF_PATTERN) THEN WriteF('DOPOF_PATTERN ')
- IF (my_dockp.flags AND DOPOF_POPUP) THEN WriteF('DOPOF_POPUP ')
- IF (my_dockp.flags AND DOPOF_TEXT) THEN WriteF('DOPOF_TEXT ')
- IF (my_dockp.flags AND DOPOF_VERTICAL) THEN WriteF('DOPOF_VERTICAL ')
- IF (my_dockp.flags AND DOPOF_BACKDROP) THEN WriteF('DOPOF_BACKDROP ')
- IF (my_dockp.flags AND DOPOF_STICKY) THEN WriteF('DOPOF_STICKY ')
- WriteF('\n')
- ENDPROC
- PROC main() HANDLE /*"main()"*/
- tm_ReadTMFile(arg)
- Raise(ER_NONE)
- EXCEPT
- ENDPROC
-