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

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.4 ! root       72: * Different amounts of ST-RAM from 0 (0.5MB) to 14MB
        !            73: 
        !            74: * Different amounts of TT-RAM from 0 to 256MB
1.1       root       75: 
1.1.1.2   root       76: * With and without GEMDOS harddisk directory emulation
1.1       root       77: 
1.1.1.2   root       78:   Test program is started either from a floppy or an emulated GEMDOS
                     79:   HD (directory) using *.INF file, or in case of TOS v1.00 - 1.02,
                     80:   from floppy auto/-folder.  GEMDOS HD testing is done with more
                     81:   extensive gemdos.prg test program, floppy testing with minimal.prg
                     82:   test program which doesn't change the floppy content (to avoid its
                     83:   repository file update).
1.1       root       84: 
1.1.1.3   root       85: * ACSI and IDE interface testing with EmuTOS
                     86: 
1.1.1.2   root       87: * Arbitrary boolean Hatari command line options specified
                     88:   with the "--bool" option
                     89: 
                     90: You can use the command line options to specify which set of these
                     91: is used and TOS tester will go through all combinations of them.
                     92: 
                     93: See "tos_tester.py -h" output for examples.
1.1       root       94: 
                     95: 
                     96: What to test
                     97: ------------
                     98: 
                     99: For each Hatari release it would be good to test e.g. the following
                    100: TOS versions:
                    101:   v1.00 de, v1.02 de, v1.04 de, v1.04 us, v1.62 de, v1.62 us,
                    102:   v2.06 de, v3.06 us, v4.04, etos192k, etos512k[1]
                    103: 
                    104: [1] Just the latest release of EmuTOS.
                    105: 
1.1.1.2   root      106: And following monitor configurations:
                    107:   ST:     tv,  mono, vdi-1, vdi-4
                    108:   STE:    rgb, mono, vdi-1, vdi-4
                    109:   TT:     vga, mono, vdi-1, vdi-4
                    110:   Falcon: rgb, mono, vga
                    111: 
                    112: Memory configurations:
                    113:   ST:   0.5 &  2 MB
                    114:   STE:    1 &  4 MB
1.1.1.4 ! root      115:   TT:     2 & 10 MB ST-RAM, 0 & 32 MB TT-RAM
        !           116:   Falcon: 4 & 14 MB ST-RAM, 0 & 32 MB TT-RAM
1.1.1.2   root      117: 
1.1.1.3   root      118: And both with GEMDOS HD and just floppy.  For EmuTOS, also IDE & ACSI.
1.1.1.2   root      119: 
                    120: Testing should be done both for old UAE CPU core and the new WinUAE
                    121: one.  This should give good enough coverage of all the possible bootup
1.1       root      122: issues.
                    123: 
1.1.1.2   root      124: Note that it's enought to give the whole set of HW configurations to
                    125: TOS tester, it will automatically select a suitable subset of HW
                    126: combinations to test, for each given TOS versions.
                    127: 
                    128: 
                    129: Potential TODOs
                    130: ---------------
                    131: 
                    132: Extend GEMDOS test program to test also:
                    133: * starting another program
                    134: * file redirection
                    135: 
                    136: But only if all TOS versions support that properly.
                    137: 
                    138: -
                    139: 
1.1.1.3   root      140: Add testing of ASCI and IDE drives with normal TOS in addition to the
                    141: GEMDOS HD and floppy tests.
1.1.1.2   root      142: 
                    143: This isn't very straightforward because both need different drivers
                    144: and therefore different disk images and the drivers either have issues
                    145: with e.g. EmuTOS, or don't support all machines.  Formatting and
                    146: installing the drivers requires using interactive Atari programs,
                    147: so these images cannot be automatically (re-)generated.
                    148: 
1.1.1.3   root      149: (EmuTOS supports IDE and ACSI directly, without any need for drivers.
                    150: Both HDs with DOS (not Atari) partition table, and ones without
                    151: partition table at all.  That's why it can be already tested.)
                    152: 
                    153: -
                    154: 
                    155: Testing a HD disk having also MiNT (= WinUAE / MMU testing at the same time).
1.1.1.2   root      156: 
                    157: -
                    158: 
                    159: Machine type specific test programs e.g. for:
                    160: * ST color resolution overscan
                    161: * STE blitter and overscan
                    162: * TT FPU operations, could output e.g. speed
                    163: * Falcon DSP operations
                    164: 
                    165: If pre-existing demo programs are used for these, it's better
                    166: if they're small.
                    167: 
                    168: Such programs also needs to have some static screen which doesn't
                    169: automatically advance so that a screenshot can be taken of it.
                    170: Alternatively, test program could be accompanied with debugger
                    171: script(s) that stop the program at suitable point and take a
                    172: screenshot.
                    173: 
                    174: -
1.1       root      175: 
1.1.1.2   root      176: Current screenshot-report.sh script assumes that Hatari will always
                    177: create identical screenshots for the same screen content.  This might
                    178: not be true if underlying libpng gets updated, so it would be better
                    179: to have some e.g. SDL binary that loads two images, compares their
                    180: uncompressed content and either reports that, or shows the difference.
1.1       root      181: 
1.1.1.2   root      182: -
1.1       root      183: 
1.1.1.2   root      184: 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.