Annotation of hatari/tests/tosboot/readme.txt, revision 1.1.1.3

1.1.1.2   root        1: Files
                      2: -----
                      3: 
                      4: Tools and data files:
                      5: Makefile      -- builds the test program and floppy & HD images
                      6:                  containing it
                      7: disk/*        -- sources, binaries and input files for test program,
                      8:                  directory is also used for GEMDOS HD emu testing
                      9: floppy/*      -- files to autostart test program from floppy
                     10: tos_tester.py -- test driver, described below
                     11: 
                     12: Generated files:
                     13: output/*       -- Test report and screenshots, temporary output files
                     14: dummy.cfg      -- Hatari config file generated by test driver
                     15: blank-a.st.gz  -- blank floppy image to avoid TOS disk dialogs
                     16: bootauto.st.gz -- floppy image with the test files and test program
                     17:                   run from auto/-folder for TOS <1.04
                     18: bootdesk.st.gz -- floppy image with the test files and test program
                     19:                   run from *.INF desktop file
                     20: hd.img         -- HD image with the the test program / files
                     21:                   and DOS partition table
                     22: 
                     23: Other files and directories:
                     24: readme.txt -- this text file
                     25: tos/*      -- TOSDIR in Makefile points here for your TOS images
                     26: 
                     27: There's also "screenshot-report.sh" script to generate a HTML report
                     28: out of the screenshots saved by TOS tester which will list missing
                     29: tests and any differences in the produced screenshots.  For that, you
                     30: need "reference" directory to contain screenshots from an earlier,
                     31: succesful run of TOS tester.
                     32: 
1.1       root       33: 
                     34: Usage
                     35: -----
                     36: 
                     37: If you want to test Hatari version that isn't in your PATH,
                     38: you need to give PATH for the Hatari binary you want to test,
                     39: like this:
1.1.1.2   root       40:        PATH=../../build/src:$PATH make
                     41: 
                     42: Before running that, tos/ subdirectory should have (symbolic links to)
                     43: TOS images you want to test, at least EmuTOS etos512k.img image.
                     44: Or add this before above command:
                     45:        TOSDIR=<path to TOS images dir>
                     46: 
                     47: Alternatively, you can call the TOS tester directly and specify
                     48: the TOS images it should test:
                     49:        PATH=../../build/src:$PATH ./tos_tester.py <TOS images>
1.1       root       50: 
                     51: To view the produced screenshots, either use ImageMagick:
1.1.1.2   root       52:        display output/*.png
1.1       root       53: 
                     54: Or use the script that creates a HTML page with them and opens
                     55: browser to view it.
                     56: 
                     57: 
                     58: What TOS tester tests
                     59: ---------------------
                     60: 
1.1.1.2   root       61: These are the HW configuration combinations that TOS tester currently
1.1       root       62: supports:
                     63: 
1.1.1.2   root       64: * ST, STE, TT and Falcon machine types
1.1       root       65: 
1.1.1.2   root       66:   EmuTOS 512k is tested for all the machine types.  EmuTOS 192k, 256k
                     67:   and TOS v2.x are tested with all machine types except Falcon. Rest
                     68:   of TOSes are tested only with a single machine type.
1.1       root       69: 
1.1.1.2   root       70: * TV, VGA, RGB and monochrome monitors and 1, 2 & 4 plane VDI modes
1.1       root       71: 
1.1.1.2   root       72: * Different amounts of memory from 0 (0.5MB) to 14MB
1.1       root       73: 
1.1.1.2   root       74: * With and without GEMDOS harddisk directory emulation
1.1       root       75: 
1.1.1.2   root       76:   Test program is started either from a floppy or an emulated GEMDOS
                     77:   HD (directory) using *.INF file, or in case of TOS v1.00 - 1.02,
                     78:   from floppy auto/-folder.  GEMDOS HD testing is done with more
                     79:   extensive gemdos.prg test program, floppy testing with minimal.prg
                     80:   test program which doesn't change the floppy content (to avoid its
                     81:   repository file update).
1.1       root       82: 
1.1.1.3 ! root       83: * ACSI and IDE interface testing with EmuTOS
        !            84: 
1.1.1.2   root       85: * Arbitrary boolean Hatari command line options specified
                     86:   with the "--bool" option
                     87: 
                     88: You can use the command line options to specify which set of these
                     89: is used and TOS tester will go through all combinations of them.
                     90: 
                     91: See "tos_tester.py -h" output for examples.
1.1       root       92: 
                     93: 
                     94: What to test
                     95: ------------
                     96: 
                     97: For each Hatari release it would be good to test e.g. the following
                     98: TOS versions:
                     99:   v1.00 de, v1.02 de, v1.04 de, v1.04 us, v1.62 de, v1.62 us,
                    100:   v2.06 de, v3.06 us, v4.04, etos192k, etos512k[1]
                    101: 
                    102: [1] Just the latest release of EmuTOS.
                    103: 
1.1.1.2   root      104: And following monitor configurations:
                    105:   ST:     tv,  mono, vdi-1, vdi-4
                    106:   STE:    rgb, mono, vdi-1, vdi-4
                    107:   TT:     vga, mono, vdi-1, vdi-4
                    108:   Falcon: rgb, mono, vga
                    109: 
                    110: Memory configurations:
                    111:   ST:   0.5 &  2 MB
                    112:   STE:    1 &  4 MB
                    113:   TT:     2 & 10 MB
                    114:   Falcon: 4 & 14 MB
                    115: 
1.1.1.3 ! root      116: And both with GEMDOS HD and just floppy.  For EmuTOS, also IDE & ACSI.
1.1.1.2   root      117: 
                    118: Testing should be done both for old UAE CPU core and the new WinUAE
                    119: one.  This should give good enough coverage of all the possible bootup
1.1       root      120: issues.
                    121: 
1.1.1.2   root      122: Note that it's enought to give the whole set of HW configurations to
                    123: TOS tester, it will automatically select a suitable subset of HW
                    124: combinations to test, for each given TOS versions.
                    125: 
                    126: 
                    127: Potential TODOs
                    128: ---------------
                    129: 
                    130: Extend GEMDOS test program to test also:
                    131: * starting another program
                    132: * file redirection
                    133: 
                    134: But only if all TOS versions support that properly.
                    135: 
                    136: -
                    137: 
1.1.1.3 ! root      138: Add testing of ASCI and IDE drives with normal TOS in addition to the
        !           139: GEMDOS HD and floppy tests.
1.1.1.2   root      140: 
                    141: This isn't very straightforward because both need different drivers
                    142: and therefore different disk images and the drivers either have issues
                    143: with e.g. EmuTOS, or don't support all machines.  Formatting and
                    144: installing the drivers requires using interactive Atari programs,
                    145: so these images cannot be automatically (re-)generated.
                    146: 
1.1.1.3 ! root      147: (EmuTOS supports IDE and ACSI directly, without any need for drivers.
        !           148: Both HDs with DOS (not Atari) partition table, and ones without
        !           149: partition table at all.  That's why it can be already tested.)
        !           150: 
        !           151: -
        !           152: 
        !           153: Testing a HD disk having also MiNT (= WinUAE / MMU testing at the same time).
1.1.1.2   root      154: 
                    155: -
                    156: 
                    157: Machine type specific test programs e.g. for:
                    158: * ST color resolution overscan
                    159: * STE blitter and overscan
                    160: * TT FPU operations, could output e.g. speed
                    161: * Falcon DSP operations
                    162: 
                    163: If pre-existing demo programs are used for these, it's better
                    164: if they're small.
                    165: 
                    166: Such programs also needs to have some static screen which doesn't
                    167: automatically advance so that a screenshot can be taken of it.
                    168: Alternatively, test program could be accompanied with debugger
                    169: script(s) that stop the program at suitable point and take a
                    170: screenshot.
                    171: 
                    172: -
1.1       root      173: 
1.1.1.2   root      174: Current screenshot-report.sh script assumes that Hatari will always
                    175: create identical screenshots for the same screen content.  This might
                    176: not be true if underlying libpng gets updated, so it would be better
                    177: to have some e.g. SDL binary that loads two images, compares their
                    178: uncompressed content and either reports that, or shows the difference.
1.1       root      179: 
1.1.1.2   root      180: -
1.1       root      181: 
1.1.1.2   root      182: Tester for DMA sound output and comparison for the produced sound.

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.