1
0
mirror of https://github.com/safiire/n65.git synced 2024-12-12 00:29:03 +00:00
n65/lib/directives/ascii.rb
2015-03-05 13:45:19 -08:00

43 lines
659 B
Ruby

require_relative '../instruction_base'
module Assembler6502
####
## This directive to include bytes
class ASCII < InstructionBase
####
## Try to parse an incbin directive
def self.parse(line)
match_data = line.match(/^\.ascii\s+"([^"]+)"$/)
return nil if match_data.nil?
ASCII.new(match_data[1])
end
####
## Initialize with filename
def initialize(string)
@string = string
end
####
## Execute on the assembler
def exec(assembler)
assembler.write_memory(@string.bytes)
end
####
## Display
def to_s
".ascii \"#{@string}\""
end
end
end