hmm evenmore fcb functions can do a write ;)
Imported-from: https://svn.code.sf.net/p/dosbox/code-0/dosbox/trunk@478
This commit is contained in:
parent
2526daccfc
commit
1f69ee249e
3 changed files with 4 additions and 6 deletions
|
@ -147,7 +147,7 @@ bool DOS_FCBClose(Bit16u seg,Bit16u offset);
|
|||
bool DOS_FCBFindFirst(Bit16u seg,Bit16u offset);
|
||||
bool DOS_FCBFindNext(Bit16u seg,Bit16u offset);
|
||||
Bit8u DOS_FCBRead(Bit16u seg,Bit16u offset, Bit16u numBlocks);
|
||||
bool DOS_FCBWrite(Bit16u seg,Bit16u offset,Bit16u numBlocks);
|
||||
Bit8u DOS_FCBWrite(Bit16u seg,Bit16u offset,Bit16u numBlocks);
|
||||
Bit8u DOS_FCBRandomRead(Bit16u seg,Bit16u offset,Bit16u numRec,bool restore);
|
||||
Bit8u DOS_FCBRandomWrite(Bit16u seg,Bit16u offset,Bit16u numRec,bool restore);
|
||||
bool DOS_FCBGetFileSize(Bit16u seg,Bit16u offset,Bit16u numRec);
|
||||
|
|
|
@ -204,8 +204,7 @@ static Bitu DOS_21Handler(void) {
|
|||
LOG_DEBUG("DOS:0x14 FCB-Read used, result:al=%d",reg_al);
|
||||
break;
|
||||
case 0x15: /* Sequential write to FCB */
|
||||
if (DOS_FCBWrite(SegValue(ds),reg_dx,0)==true) reg_al = 0x00;
|
||||
else reg_al = 0x01;
|
||||
reg_al=DOS_FCBWrite(SegValue(ds),reg_dx,0);
|
||||
LOG_DEBUG("DOS:0x15 FCB-Write used, result:al=%d",reg_al);
|
||||
break;
|
||||
case 0x16: /* Create or truncate file using FCB */
|
||||
|
@ -228,8 +227,7 @@ static Bitu DOS_21Handler(void) {
|
|||
LOG_DEBUG("DOS:0x21 FCB-Random read used, result:al=%d",reg_al);
|
||||
break;
|
||||
case 0x22: /* Write random record to FCB */
|
||||
if (DOS_FCBRandomWrite(SegValue(ds),reg_dx,1,true)) reg_al = 0x00;
|
||||
else reg_al = 0x01;
|
||||
reg_al=DOS_FCBRandomWrite(SegValue(ds),reg_dx,1,true);
|
||||
LOG_DEBUG("DOS:0x28 FCB-Random write used, result:al=%d",reg_al);
|
||||
break;
|
||||
case 0x23: /* Get file size for FCB */
|
||||
|
|
|
@ -696,7 +696,7 @@ Bit8u DOS_FCBRead(Bit16u seg,Bit16u offset,Bit16u recno) {
|
|||
return FCB_READ_PARTIAL;
|
||||
}
|
||||
|
||||
bool DOS_FCBWrite(Bit16u seg,Bit16u offset,Bit16u recno)
|
||||
Bit8u DOS_FCBWrite(Bit16u seg,Bit16u offset,Bit16u recno)
|
||||
{
|
||||
DOS_FCB fcb(seg,offset);
|
||||
Bit8u fhandle,cur_rec;Bit16u cur_block,rec_size;
|
||||
|
|
Loading…
Add table
Reference in a new issue