: id3v2? ( path -- ? ) "ID3" head? ; : id3v1? ( path -- ? ) 128 tail* "TAG" head? ; : supported-version? ( seq -- ? ) dup { 4 } head? swap { 3 } head? or ; : id3stuff ( path -- mapped-file ? ) [ dup id3v2? [ 3 tail supported-version? ] [ dup id3v1? [ "id3v1" ] [ "none" ] if ] if ] with-mapped-uchar-file ;