Class: AppleBinary

Inherits:
NativeFileType show all
Defined in:
lib/native_file_types/apple2/AppleBinary.rb

Instance Attribute Summary

Attributes inherited from NativeFileType

#aux_code, #contents, #file_system_image, #file_type, #filename, #meta_data

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from NativeFileType

#<=>, #==, all_native_file_types, best_fit, code_for_tests, compatability_score, #data_without_header, file_type_matches?, #full_filename, #initialize, is_valid_file_if, #load_address, matching_score, native_file_types_possible_on_file_system, non_matching_score, #to_hex_dump, #to_info_dump, #type_description

Methods included from SubclassTracking

extended

Constructor Details

This class inherits a constructor from NativeFileType

Class Method Details

.file_system_file_typesObject



5
6
7
8
9
# File 'lib/native_file_types/apple2/AppleBinary.rb', line 5

def self.file_system_file_types
  {
    AppleDos=>0x04
  }
end

.load_address(contents) ⇒ Object

Apple DOS Binary files have the load address stored in first two bytes of the file, in LO, HI order



12
13
14
# File 'lib/native_file_types/apple2/AppleBinary.rb', line 12

def self.load_address(contents)
  contents[0]+contents[1]*256
end

Instance Method Details

#header_lengthObject

header is 2 bytes for load address + 2 bytes for file length



17
18
19
# File 'lib/native_file_types/apple2/AppleBinary.rb', line 17

def header_length
  4
end

#to_disassemblyObject



21
22
23
# File 'lib/native_file_types/apple2/AppleBinary.rb', line 21

def to_disassembly 
    return Apple2.disassemble(data_without_header,load_address)
end