t_id
252
t_adddate
2003/10/03
t_result
0
t_knownrunerror
0
tr_id | run | tr_ok | tr_skip | tr_result |
---|---|---|---|---|
479349842 | 940729 | False | False | Failed to run |
Record count: 1
use_temp_dir set to false verbose set to true need_cwsdpmi set to true Using DOSBOX executable: /home/muller/bin/dosbox Using ./tfattr.exe Using DosBoxDir=./ Using target dosbox.conf ./dosbox.conf "copy_con_to_file=$wrapper_output" transformed into "copy_con_to_file=./dosbox.out" "mount c $DosBoxDir" transformed into "mount c ./" "$exit" transformed into "exit" CopyFile "/home/muller/pas/gitlab-fpc-source-fixes/tests/utils/dosbox/exitcode.exe" -> "./EXITCODE.EXE" CopyFile "./tfattr.exe" -> "./TEST.EXE" CopyLOG: Early LOG Init complete LOG: DOSBox-X's working directory: /home/muller/pas/gitlab-fpc-source-fixes/tests/output/go32v2/test/units/dos/chunk000000018test LOG: Logging init: beginning logging proper. This is the end of the early init logging LOG: Logging: No logfile was given. All further logging will be discarded. LOG: DOSBox-X version 2023.10.06 Commit 59744fe (Linux SDL2 32-bit) LOG: SDL: version 2.28.2, Video dummy, Audio dummy LOG: Host keyboard layout is now () LOG: Mapper keyboard layout is now () LOG: SDL2 reports desktop display mode 1024 x 768 LOG: Configured windowposition: - LOG: SDL: Current window pixel format: SDL_PIXELFORMAT_RGB888 LOG: SDL: You are running in 24 bpp mode, this will slow down things! LOG: Screen report: Method 'None' (-1.000 x -1.000 pixels) at (0.000 x 0.000) (-1.000 x -1.000 mm) (-0.039 x -0.039 in) (-1.000 x -1.000 DPI) LOG: ISA BCLK: 8333333.333Hz (25000000/3) LOG: monopal: green, LOG: Active save slot: 1 [Empty] LOG: USING AVI+ZMBV LOG: Max 1048576 sz 16384 LOG: Final 16384 ALSA lib seq_hw.c:466:(snd_seq_hw_open) open /dev/snd/seq failed: Permission denied LOG: MT32: failed to locate ROMs. LOG: MT32 emulation requires the PCM and CONTROL ROM files. LOG: To eliminate this error message, check the DOSBox-X wiki. LOG: The ROM files are: CM32L_CONTROL.ROM and CM32L_PCM.ROM or MT32_CONTROL.ROM and MT32_PCM.ROM LOG: MIDI:Opened device:none LOG: Pentium CMPXCHG8B emulation is enabled LOG: VOODOO LFB now at d0000000 LOG: Serial1: BASE 3f8h LOG: Serial2: BASE 2f8h LOG: disney=true. For compatibility with other DOSBox forks and SVN, LPT1 has been reserved for Disney Sound Source. Initializing it now. LOG: DOSBox-X also supports disney=false and parallel1=disney LOG: MPU-401 Registering I/O ports as if IBM PC MPU-401 at base 330h LOG: Memory I/O complexity optimization enabled aka option 'memory io optimization 1'. If the game or demo is unable to draw to the screen properly, set the option to false. LOG: The 'scanline render on demand' option is available and may provide a modest boost in video render performance if set to true. LOG: Screen report: Method 'None' (-1.000 x -1.000 pixels) at (0.000 x 0.000) (-1.000 x -1.000 mm) (-0.039 x -0.039 in) (-1.000 x -1.000 DPI) LOG: Allocated APM BIOS pm entry point at f000:ce40 LOG: Writing code to fce40 LOG: Writing code to fce60 LOG: Screen report: Method 'None' (-1.000 x -1.000 pixels) at (0.000 x 0.000) (-1.000 x -1.000 mm) (-0.039 x -0.039 in) (-1.000 x -1.000 DPI) LOG: ISA Plug & Play BIOS enabled LOG: VGA ROM BIOS init callback LOG: pixratio 1.001, dw false, dh false LOG: Aspect ratio: 640 x 480 xToY=1.333 yToX=0.750 LOG: menuScale=1 LOG: surface consider=640x497 final=640x497 LOG: Screen report: Method 'None' (-1.000 x -1.000 pixels) at (0.000 x 0.000) (-1.000 x -1.000 mm) (-0.039 x -0.039 in) (-1.000 x -1.000 DPI) LOG: WARNING: No translation support (to host) for code page 0 LOG: 1410772 ERROR BIOS:Keyboard layout file auto not found LOG: 1410772 ERROR BIOS:Keyboard layout file auto not found LOG: XMS: 50 handles allocated for use by the DOS environment LOG: EMS page frame at 0xe000-0xefff LOG: COMMAND.COM env size: 720 bytes LOG: COMMAND.COM environment block: 0x0701 sz=0x002d LOG: COMMAND.COM main body (PSP): 0x072f sz=0x009a LOG: COMMAND.COM stack: 0x0749 LOG: pixratio 1.350, dw false, dh false LOG: Aspect ratio: 720 x 540 xToY=1.333 yToX=0.750 LOG: menuScale=1 LOG: surface consider=720x417 final=720x417 LOG: Screen report: Method 'None' (-1.000 x -1.000 pixels) at (0.000 x 0.000) (-1.000 x -1.000 mm) (-0.039 x -0.039 in) (-1.000 x -1.000 DPI) File "/home/muller/bin/cwsdpmi.exe" -> "./CWSDPMI.EXE" Trying to open ./dosbox.out Successfully opened ./dosbox.out, copying content to output 22: HAVE FUN WITH DOSBox-X ! Drive C is mounted as local directory ./File should never be executed in root path! 23: Opening an invalid file...Success! 24: FAILURE. (Value of DOSError should be 3 (2): File not found.) 25: Trying to open a valid file...Success! 26: Trying to open the current directory file...Success! 27: Trying to open the parent directory file...Success! 28: Trying to open a directory file...Success! 29: FAILURE. (Value of DOSError should be 3 (0): No Error.) 30: Trying to open a directory file...Success! 31: Setting read-only attribute on TESTDOS.DAT...Success. 32: Removing read-only attribute...Success. 33: Setting hidden attribute on TESTDOS.DAT...Success. 34: Removing hidden attribute...Success. 35: Setting system attribute on TESTDOS.DAT...Success. 36: Removing Sysfile attribute...Success. 37: Setting Volume attribute on TESTDOS.DAT...Success. ExitCode=1 Test finished with ExitCode=1
{******************************************} { Used to check the DOS unit } {------------------------------------------} { SetFAttr / GetFAttr testing } {******************************************} Program tfattr; uses dos; {$IFDEF MSDOS} {$DEFINE EXTATTR} {$ENDIF} {$IFDEF DPMI} {$DEFINE EXTATTR} {$ENDIF} {$IFDEF GO32V1} {$DEFINE EXTATTR} {$ENDIF} {$IFDEF GO32V2} {$DEFINE EXTATTR} {$ENDIF} {$IFDEF OS2} {$DEFINE EXTATTR} {$ENDIF} {$IFDEF WIN32} {$DEFINE EXTATTR} {$ENDIF} {$IFDEF ATARI} {$DEFINE EXTATTR} {$ENDIF} CONST { what is the root path } {$IFDEF EXTATTR} RootPath = 'C:'; {$ENDIF} {$IFDEF UNIX} RootPath = '/'; {$ENDIF} Week:Array[0..6] of String = ('Sunday','Monday','Tuesday','Wednesday','Thursday','Friday','Saturday'); TestFName = 'TESTDOS.DAT'; { CASE SENSITIVE DON'T TOUCH! } TestFName1 = 'TESTFILE'; { CASE SENSITIVE DON'T TOUCH! } TestDir = 'MYDIR'; { CASE SENSITIVE DON'T TOUCH! } TestExt = 'DAT'; {$IFDEF TP} DirectorySeparator = ''; {$ENDIF} has_errors : boolean = false; { verifies that the DOSError variable is equal to } { the value requested. } Procedure CheckDosError(err: Integer); var x : integer; s :string; Begin x := DosError; case x of 0 : s := '(0): No Error.'; 2 : s := '(2): File not found.'; 3 : s := '(3): Path not found.'; 5 : s := '(5): Access Denied.'; 6 : s := '(6): Invalid File Handle.'; 8 : s := '(8): Not enough memory.'; 10 : s := '(10) : Invalid Environment.'; 11 : s := '(11) : Invalid format.'; 18 : s := '(18) : No more files.'; else s := 'INVALID DOSERROR'; end; if err <> x then Begin WriteLn('FAILURE. (Value of DOSError should be ',err,' '+s+')'); has_errors:=true; end; end; procedure fail; Begin WriteLn('Failed!'); has_errors:=true; End; Procedure TestFAttr1; Var F: File; Attr: Word; s: string; Begin WriteLn('Opening an invalid file...Success!'); Assign(f,''); GetFAttr(f,Attr); CheckDosError(3); Assign(f,TestFName); WriteLn('Trying to open a valid file...Success!'); GetFAttr(f,Attr); CheckDosError(0); Write('Trying to open the current directory file...'); Assign(f,'.'); GetFAttr(f,Attr); if (attr and Directory) = 0 then fail else WriteLn('Success!'); CheckDosError(0); Write('Trying to open the parent directory file...'); Assign(f,'..'); GetFAttr(f,Attr); if (attr and Directory) = 0 then fail else WriteLn('Success!'); CheckDosError(0); { This is completely platform dependent Write('Trying to open the parent directory file when in root...'); Getdir(0,s); ChDir(RootPath); Assign(f,'..'); GetFAttr(f,Attr); ChDir(s); CheckDosError(3); WriteLn('Success!'); } {$ifdef go32v2} { Should normally fail, because of end directory separator. This is allowed under unixes so the test is go32v2 only } WriteLn('Trying to open a directory file...Success!'); GetDir(0,s); Assign(f,s+DirectorySeparator); GetFAttr(f, Attr); CheckDosError(3); {$endif} Write('Trying to open a directory file...'); GetDir(0,s); Assign(f,s); GetFAttr(f, Attr); if (attr and Directory) = 0 then fail else WriteLn('Success!'); CheckDosError(0); end; Procedure TestFAttr; Var F: File; Attr: Word; s: string; Begin Assign(f, TestFname); {----------------------------------------------------------------} { This routine causes problems, because it all depends on the } { operating system. It is assumed here that HIDDEN is available } { to all operating systems. } {----------------------------------------------------------------} s:='Setting read-only attribute on '+TestFName+'...'; SetFAttr(f,ReadOnly); CheckDosError(0); {$IFDEF EXTATTR} GetFAttr(f,Attr); CheckDosError(0); if Attr and ReadOnly<> 0 then WriteLn(s+'Success.') else Begin WriteLn(s+'FAILURE. Read-only attribute not set.'); has_errors:=true; end; { file should no longer be read only } s:='Removing read-only attribute...'; SetFAttr(f,Archive); CheckDosError(0); GetFAttr(f,Attr); CheckDosError(0); if Attr and ReadOnly<> 0 then Begin WriteLn(s+'FAILURE. Read-only attribute still set.'); has_errors:=true; end else WriteLn(s+'Success.'); {$ENDIF} s:='Setting hidden attribute on '+TestFName+'...'; SetFAttr(f,Hidden); CheckDosError(0); {$IFDEF EXTATTR} GetFAttr(f,Attr); CheckDosError(0); if Attr and Hidden<> 0 then WriteLn(s+'Success.') else Begin WriteLn(s+'FAILURE. Hidden attribute not set.'); has_errors:=true; end; { file should no longer be read only } s:='Removing hidden attribute...'; SetFAttr(f,Archive); CheckDosError(0); GetFAttr(f,Attr); CheckDosError(0); if Attr and Hidden<> 0 then Begin WriteLn(s+'FAILURE. Hidden attribute still set.'); has_errors:=true; end else WriteLn(s+'Success.'); {$ENDIF} {$IFDEF EXTATTR} s:='Setting system attribute on '+TestFName+'...'; SetFAttr(f,SysFile); CheckDosError(0); GetFAttr(f,Attr); CheckDosError(0); if Attr and SysFile<> 0 then WriteLn(s+'Success.') else Begin WriteLn(s+'FAILURE. SysFile attribute not set.'); has_errors:=true; end; { file should no longer be read only } s:='Removing Sysfile attribute...'; SetFAttr(f,0); CheckDosError(0); GetFAttr(f,Attr); CheckDosError(0); if Attr and Sysfile<> 0 then Begin WriteLn(s+'FAILURE. SysFile attribute still set.'); has_errors:=true; end else WriteLn(s+'Success.'); {$ENDIF} { s:='Setting Directory attribute on '+TestFName+'...'; SetFAttr(f,Directory); CheckDosError(5); GetFAttr(f,Attr); CheckDosError(0); if Attr and Directory<> 0 then Begin WriteLn(s+'FAILURE. Directory Attribute set.'); has_errors:=true; end else WriteLn(s+'Success.'); } {**********************************************************************} {********************** TURBO PASCAL BUG ******************************} { The File is not a volume name, and DosError = 0, which is incorrect } { it shoulf not be so in FPC. } {**********************************************************************} {********************** TURBO PASCAL BUG ******************************} s:='Setting Volume attribute on '+TestFName+'...'; SetFAttr(f,VolumeID); {$ifndef tp} CheckDosError(5); {$else} CheckDosError(0); {$endif} GetFAttr(f,Attr); CheckDosError(0); if Attr and VolumeID<> 0 then Begin WriteLn(s+'FAILURE. Volume Attribute set.'); has_errors:=true; end else WriteLn(s+'Success.'); end; var f: file; oldexit : pointer; procedure MyExit;far; begin ExitProc := OldExit; RmDir(TestDir); Assign(f, TestFname); Erase(f); Assign(f, TestFname1); Erase(f); end; Begin WriteLn('File should never be executed in root path!'); OldExit := ExitProc; ExitProc := @MyExit; Assign(f,TestFName); Rewrite(f,1); BlockWrite(f,Week,sizeof(Week)); Close(f); Assign(f,TestFName1); Rewrite(f,1); Close(F); MkDir(TestDir); testfattr1; testfattr; if has_errors then halt(1); end. { $Log: tfattr.pp,v $ Revision 1.3 2002/12/06 16:48:02 peter * Not supporting an ending slash is Dos specific Revision 1.2 2002/11/18 09:49:49 pierre * tried to make as many as possible tests non interactive Revision 1.1 2002/11/08 21:01:18 carl * separated some tests * make tfexpand more portable }