patch -e
942c
# print "#{rg['pc'].to_xeh} #{rg['sym']} #{rg['cop'].to_xeh}\n"
lpl.verb "#{rg['pc'].to_xeh} #{rg['sym']} #{rg['cop'].to_xeh}"
.
924d
842,843c
# when 'th' then fv = (fvl.delete_at(1) || fvl[0]).(oi) # c
when 'th' then fv = fvl[-1].(oi); fvl.delete_at(1) # c
.
831c
(oi <=> wd = fv.width) + 1 >> 1]},
.
827,829c
# fvl = [->(oi) {th += [[fv[oi] && imem.ta(fv[oi], cop)], []][ # l c
# ((wd = fv.width) <=> oi) >> 1]},
# ->(oi) {[fv[oi] = th[oi] = (imem.ta(fv[oi], cop)), []]}] # .lazy # l c
.
821c
fml = imem.fml('th', sym) || (
# printf("Unkown code %s \n", OPTABLE_SYM[imem.get_opcode(cop)])
pl.verb("Unkown code #{sym} ") # .to_s
# return nil
# raise
)
.
814c
# pc, sp, cop, sym = [rg['pc'], rg['sp'], rg['cop'], rg['sym']]
pc, sp, cop, sym = rg.to_ra('pc', 'sp', 'cop', 'sym')
.
806,809c
# pl[i_th] = lpl.pl_eg(pc, 'th')
# }
# }
# end
.
802,803c
# flg, pl = fls2(pc, pl)
# Fiber.yield(flg)
.
797,800c
# Fiber.new {
# loop {
.
795c
# pl = lpl.pl_g(pc)
.
789,793c
# def fls(pc) ###
# lpl = @pl
# i_th = lpl.affil('th', ?i) # q
.
785,786c
Fiber.yield(flg.all?) ##
} ##
} ##
.
782c
# return([! flg.include?(false), pl]) ###
.
780c
# print "#{(pc - 1).to_xeh} #{sym} #{rs[1]} #{rs[0]}\n"
lpl.verb "#{(pc - 1).to_xeh} #{sym} #{rs[1]} #{rs[0]}"
.
778a
rs = [r1.to_xeh, r0.to_xeh]
.
765,769c
Fiber.new { ##
loop { ##
pl = lpl.pl_g(pc) ##
sp ||= s.sp(pl[i_sp][0]) ##
# sp = s.sp(pl[i_sp][0]) ###
.
761c
# rs[0] = r1.to_xeh
},
.
759c
# rs[1] = r0.to_xeh
},
.
757d
754d
751c
# rs = [r1.to_xeh, r0.to_xeh]
},
.
749c
# r = if r1 <= sz && plr[r1].nil?.! then plr[r1] else lm.(isr0, r1) end # c
r = r1 <= sz && plr[r1] || lm.(isr0, r1) # c
.
745d
740d
719,722c
def fls(pc) ##
.
717c
# def fls2(pc, pl = []) ###
.
711d
708d
701c
# ENVary.new(0).plm(pc)
Pl.new.plm(pc)
.
674,675c
# thini = [false, 0]
# @pl = ENVary.new(rmth + 1, [thini], [], [])
@pl = ENVary.new
.
671c
# rmth = @@rmth
.
651c
# @@rmth = 39
@@rmth = RMTH
.
640c
class Rg # higokan ? mruby-thread:410200
.
637a
def to_ra(*a)
r = []
a.each { |v| r<< self[v]} # p
r
end
.
555,556c
# class Pl < ENVary
# include M__Pl
.
551,552d
548c
#### GC.start # g
.
513,514c
# f && idx += (mx <=> idx) + 1 >> 1 ##
f && idx -= (idx <=> mx) >> 1 ##
.
505a
# self.pl_es(pc, ['th', th])
.
498,501c
th[idx] = s_id(th[idx], pc - 1)
#### th[idx] = s_id(th[idx], pc - 1) if ckth(th[idx], 0) # fuguai taisaku
.
480,484c
# opc, op = a
# case opc when Numeric then true end || (
#print "#{pc.to_xeh} #{opc} #{op.to_xeh}\n")
# (imem = @@Imem).mcall(opc, op) || op
a, op = a
case a when Numeric then true end || (
# print "#{pc.to_xeh} #{a} #{op.to_xeh}\n")
verb "#{pc.to_xeh} #{a} #{op.to_xeh}")
(imem = @@Imem).mcall(a, op) || op
# (imem = @@Imem).send(opc, op) || op
.
468,474c
## v.kind_of?(Array) ? __send__(a, pc) : a # unwork ( thread ? )
# knid(a, :Array) ? __method__(a, pc) : a
case a when Array then __method__(a, pc) else a end
## knid(a, :Array) ? __callee__(a, pc) : a # unwork ( thread ? )
# case a when Array then s_id(a, pc) else a end
.
466c
# ([] == a || case a when Array then true end.!) && (return a) # t # higokan mruby:70410200 monami-ya.mrb:60510200
.
464c
# ([] == a || ! knid(a, :Array)) && return(a) # t # higokan mruby:70410200 monami-ya.mrb:60510200
.
462c
def verb(s)
@@m.lock
print s << "\n"
@@m.unlock
end
# private
end
# module M__Pl # higokan ? mruby 70410200
class Pl < ENVary
def initialize; end
.
458c
# 0 == lf && break
0 == md >> bfsz && break
.
456c
# lf = (md >>= bfsz) >> bfsz
md >>= bfsz
.
430,434d
421,424d
403,410d
393,399c
# if 0 == n
# @@Plmg.(pl_g(-1), lpl[n][1]) # c
# else
# @@Plmg.(pl_g(-1), lpl[n]) # c
# end
# @@Plmg.(pl_g(-1), 0 == n ? lpl[n][1] : lpl[n]) # c
@@Plmg.(@@pl0i, 0 == n ? lpl[n][1] : lpl[n]) # c
.
390a
def ref_pl0i; @@pl0i = pl_g(-1) end
.
374c
# self[n] = 0 == n ? [pl_g(-1), pl] : pl
self[n] = 0 == n ? [@@pl0i, pl] : pl
.
358a
else
# case pl when Array then else pl = @@plini end # higokan ? mruby 70410200
# case pl when Array then true end || pl = @@plini # higokan ? mruby 70410200
unless knid(pl, :Array) then pl = @@plini end
.
356c
# pl = pl[self.idx0(n)]
pl = pl[idx0(n)]
.
353c
# pl = self[self.idx0(n, 0)]
pl = self[idx0(n, 0)]
.
316c
# ploc(n) { |a| JSON::parse(ENV[@@idb + a[0]])}
# ploc(n) { |a| JSON::parse(ENV[@@idb + a[0]] || 'null')}
# ploc(n) { |a| JSON::parse((a = ENV[@@idb + a[0]]) && '[]' == (a[0] + a[-1])) ? a : 'null'))}
ploc(n) { |a| (a = ENV[@@idb + a[0]]).nil? ? a :
if '[]' == (a[0] + a[-1]) then JSON::parse(a) else a end} # hoken
.
279,280c
# self[0] = [['th', 'sym', 'ctr'],
# self[0] = [@@pl0i = pl0i, [[thini], 0, [-1]]]
self[0] = [pl0i, [[thini], 0, [-1]]]
ref_pl0i
.
276c
# 3080410200 : 5x2 ok ( gc ) : monami-ya.mrb 8270410200 813e2af8 #
http://www.monami-ya.jp/
.
272a
pl0i = ['th', 'sym', 'ctr']
.
264c
n = RMTH + 1
a = @@plini
# (0 .. n).each{ |i|
0.step(n) { |i|
.
258,262c
# if 1 > n
## @n = -n
## return self[@n]
# return
# end
.
256c
# n = a.shift
.
252c
# def initialize(*a)
def initialize
.
249a
@@thini = [false, 0]
@@plini = [[@@thini], [], []]
@@pl0i = nil
.
247c
# (Time.now.to_f - 0x3fffffff.to_f << 0x10).to_s.split('.')[0][-8..-1].to_xeh
.
237a
@@m = Mutex.new
.
219,220d
183,207c
# def ta(l, cop) [l.shift || 'getarg_a', l.shift || cop][0 .. l.pop || 1] end
def ta(l, cop) [l.shift || :getarg_a, l.shift || cop][0 .. l.pop || 1] end
.
108,126c
@fml = @@fml
end
def fml(lb, sym)
@fml.(lb).assoc(sym) # || ( # c
## printf("Unkown code %s \n", OPTABLE_SYM[imem.get_opcode(cop)])
## print("Unkown code #{sym} \n") # .to_s
# return nil
## raise
# )
.
106a
@@fml = ->(lb) { [ # l
['st',
[:MOVE, :s__sr0], [:LOADL, :s__i_pool_r0],
[:LOADI, :s__r0 ], [:LOADSYM, :s__i_syms_r0],
[:LOADSELF, :s__sr0], [:LOADT, :s__r0],
[:ADD, :s__sr01, :+], [:ADDI, :s__r0, :+],
[:SUB, :s__sr01, :-], [:SUBI, :s__r0, :-],
[:MUL, :s__sr01, :*], [:DIV, :s__r01, :/],
[:EQ, :s__r1_eq_sr01]],
['th',
['bt', ['sym', true, 'th', true], ['sym', false, 'th', true]],
[:MOVE, [[:getarg_b ], []]], [:LOADL, [[:getarg_bx ], []]],
[:LOADI, [[:getarg_sbx ], []]], [:LOADSYM, [[:getarg_bx ], []]],
[:LOADSELF, [[:mk_opcode, 0], []]], [:LOADT, [[true, '', 0], []]], # mk_opcode 0
[:ADD, [[] ]], [:ADDI, [[:getarg_c ], []]],
[:SUB, [[] ]], [:SUBI, [[:getarg_c ], []]],
[:MUL, [[]]], [:DIV, [[]]], [:EQ, [[]]]
]].assoc(lb) # .lazy
}
.
92c
# @@slp = 0.00001
@@slp = 0.000005
.
90c
## @@slp = 10 # conf.gem :github => 'kimushu/mruby-sleep' # msleep usleep
# @@slp = 5 # conf.gem :github => 'kimushu/mruby-sleep' # msleep usleep
.
55,59c
# def sgp # (i)
# self + self.abs >> 1
# end
def sgp; self + self.abs >> 1 end
.
51,53c
# def to_xeh # unwork mruby 60410200 # mrblib/
# self.to_i.to_s(0x10).reverse
# end
.
42c
end # .!.!
end
def to_xeh
case self when Numeric then self.to_i.to_s(0x10).reverse else ?- end
.
37,38c
# ) << ?i == k ? '' : ?. # q 2
) << :Fixnum == k.to_sym ? '' : ?. # q
.
31,32c
# case k = k.to_s[1]
case k.to_s[1] # .to_sym[1] # higokan mruby 70410200
.
2a
# RMTH = 39
RMTH = 7
.
--
YAMAGUTIseisei ( str_h__namae = { :sei => "山口" , :mei => "青星" } )
http://hello.to/seisei/ mailto:
seisei@.68..net tel:081-70-5152-1104
heiwa furiisekkusu 1tu