public byte[] read(long pos,int length){byte[] b=new byte[length];

try{if(VRAM){long[] disk;long end=pos+length;int r=0;

System.out.println("Read Ram Address: Position="+pos+",End="+end+"");

while(pos<end){disk=VraToPh(pos);
System.out.println("Reading Section: Position="+disk[0]+",End="+(disk[0]+disk[1])+"");
if(disk[0]>0){Data.seek(disk[0]);if(disk[1]<(length)){Data.read(b,r,(int)disk[1]);}else{Data.read(b,r,length);}}
r+=disk[1];pos+=disk[1];}}else{Data.seek(pos);Data.read(b,0,b.length);}}catch(Exception e){System.out.println("READING ERROR");};
return(b);}