- 355 名前:デフォルトの名無しさん mailto:sage [2012/03/07(水) 19:38:43.63 .net]
- NES GameGeineコード<=>アドレス?比較:値 変換。とりあえず8行
#!/usr/bin/perl -p $G=APZLGITYEOXUKSVN;$H='[0-9A-F]';if(/^[$G]{8}/){for(split(//,$G)){$G{$_}=$i++} for(split(//)){push(@_,$G{$_})}$_=sprintf("%04X?%02X-%02X\n",($_[3]&7)<<12|($_[ 4]&8)<<8|($_[5]&7)<<8|($_[1]&8)<<4|($_[2]&7)<<4|$_[3]&8|$_[4]&7|0x8000,($_[6]&8 )<<4|($_[7]&7)<<4|$_[5]&8|$_[6]&7,($_[0]&8)<<4|($_[1]&7)<<4|$_[0]&7|$_[7]&8)} elsif(/^($H{4})[?:]($H{2})-($H{2})/i){for(split(//,$G)){push(@G,$_)}($a,$k,$v)= (hex($1),hex($2),hex($3));@_=($v&7|($v>>4)&8,($v>>4)&7|($a>>4)&8,($a>>4)&7|8,( $a>>12)|$a&8,$a&7|($a>>8)&8,($a>>8)&7|$k&8,$k&7|($k>>4)&8,($k>>4)&7|$v&8); $_='';for$a(@_){$_.=$G[$a]};$_.=$/}else{$_=''}
|

|