Sha256: aa67c3d1e3105328023de3bc8063e9e2d349cc401c6f0150143c56b2c59e7c46
Contents?: true
Size: 1.74 KB
Versions: 19
Compression:
Stored size: 1.74 KB
Contents
require 'NativeFileType' class Trs80PascalSource<NativeFileType def self.file_system_file_types { TrsDos=>"SRC" } end #TRS80 Pascal Source files appear to start with a T and then a 2 byte length marker is_valid_file_if lambda {contents[0]==0x54 && (contents[1,2].unpack('v')[0])<contents.length} def to_listing s="" p=1 length=contents[1,2].unpack('v')[0] contents[1,length].each_byte do |b| if (b>=0x80) then s<<' '*(b-0x80) elsif b==0x01 then s<<"\n" else s<<b.chr end end s end end # == Author # Jonno Downes (jonno@jamtronix.com) # # == Copyright # Copyright (c) 2008 Jonno Downes (jonno@jamtronix.com) # #Permission is hereby granted, free of charge, to any person obtaining #a copy of this software and associated documentation files (the #"Software"), to deal in the Software without restriction, including #without limitation the rights to use, copy, modify, merge, publish, #distribute, sublicense, and/or sell copies of the Software, and to #permit persons to whom the Software is furnished to do so, subject to #the following conditions: # The above copyright notice and this permission notice shall be # included in all copies or substantial portions of the Software. # THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, # EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF # MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND # NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE # LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION # OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION # WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Version data entries
19 entries across 19 versions & 1 rubygems