# File lib/DOSDisk.rb, line 229
def free_sector_list
  end_of_sector_usage_bitmap=(track_count*4+0x38)-1
  sector_usage_bitmap=get_sector(0x11,0)[0x38..end_of_sector_usage_bitmap]
  free_sectors=[]
  #skip track 0 - even if sectors there are unused, we can't include them in a catalog or track/sector list
    (1..track_count-1).each do |track|
      track_bitmap_lo=sector_usage_bitmap[track*4+1]
      track_bitmap_hi=sector_usage_bitmap[track*4]
      (0..7).each do |sector|
        if ((track_bitmap_lo & (2**(sector)))!=0) then
          free_sectors<<DSKTrackSector.new(track,sector)
        end
        if ((track_bitmap_hi & (2**(sector)))!=0) then
          free_sectors<<DSKTrackSector.new(track,sector+8)
        end        
      end
    end
    free_sectors.sort
end