とりあえず目的達成。
こんなコードになりますた。

int[] src = { 0x00, 0x01, 0x7E, 0x7F, 0x80, 0x81, 0xFE, 0xFF };
FileChannel ch = new FileOutputStream(new File("C:/test.bin")).getChannel();
byte[] datas = new byte[src.length];
for (int i = 0; i < src.length; i++) {
  datas[i] = src[i] < 0x80 ? (byte) (src[i]) : (byte) (src[i] - 0x100);
}
ByteBuffer buff = ByteBuffer.allocateDirect(datas.length);
buff.put(datas).rewind();
ch.write(buff);
ch.close();

ファイルをバイナリエディタで開いたら、ちゃんと目的のバイト列で書かれれました。