# File lib/native_file_types/c64/C64GeosFont.rb, line 84
def bitstreams(point_size,char)
        font_data=@contents[point_size+1]
        return nil if font_data.nil?
        bit_stream_index=font_data[0x04]+0x100*font_data[0x05]
        bit_stream_base=font_data[0x06]+0x100*font_data[0x07]
        char_pointer=2*((char[0]%0x80)-0x20)
        start_of_char=font_data[char_pointer+bit_stream_index]+0x100*font_data[char_pointer+bit_stream_index+1]
        start_of_next_char=font_data[char_pointer+bit_stream_index+2]+0x100*font_data[char_pointer+bit_stream_index+3]
#       puts "# #{filename} #{point_size} #{char} #{start_of_char} - #{start_of_next_char}"

        bitstream=[]
        char_height(point_size).times do |line|
                bitstream[line]=[]
                bit_counter=0
                start_of_line_bitstream=line*bytes_in_bitstream(point_size)+bit_stream_base
                (start_of_char..start_of_next_char-1).each do |bit_offset|
                        byte_offset=bit_offset/8
                        bitmask=0b10000000>>(bit_offset % 8)
                        byte=font_data[start_of_line_bitstream+byte_offset]
#                       puts "%08b:%08b==%08b" % [byte,bitmask,byte & bitmask]

                        bitstream[line][bit_counter]=(((byte & bitmask)!=0)? 1 : 0)
                        bit_counter+=1
                end   
#               bitstream[line][bit_counter]="\n"

        end
        bitstream
end