Rev 78 | Rev 84 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 78 | Rev 83 | ||
---|---|---|---|
Line 49... | Line 49... | ||
49 | file_system_lfn: |
49 | file_system_lfn: |
50 | ; in: eax->fileinfo block |
50 | ; in: eax->fileinfo block |
51 | ; operation codes: |
51 | ; operation codes: |
52 | ; 0 : read file |
52 | ; 0 : read file |
53 | ; 1 : read folder |
53 | ; 1 : read folder |
54 | ; 2 : rewrite file - not implemented yet |
54 | ; 2 : create/rewrite file |
55 | ; 3 : write/append to file - not implemented yet |
55 | ; 3 : write/append to file - not implemented yet |
56 | ; 4 : start application - not implemented yet |
56 | ; 4 : delete file - not implemented yet |
57 | ; 5 : delete file - not implemented yet |
57 | ; 5 : create directory - not implemented yet |
58 | ; 6 : create directory - not implemented yet |
58 | ; 6 : rename file/directory - not implemented yet |
59 | ; 7 : rename file/directory - not implemented yet |
59 | ; 7 : get file attributes structure - not implemented yet |
60 | ; 8 : get file attributes structure - not implemented yet |
60 | ; 8 : start application - not implemented yet |
Line 61... | Line 61... | ||
61 | 61 | ||
62 | add eax, std_application_base_address |
62 | add eax, std_application_base_address |
63 | ; parse file name |
63 | ; parse file name |
64 | xchg ebx, eax |
64 | xchg ebx, eax |
Line 288... | Line 288... | ||
288 | 288 | ||
289 | fs_OnRamdisk: |
289 | fs_OnRamdisk: |
290 | cmp ecx, 1 |
290 | cmp ecx, 1 |
291 | jnz file_system_lfn.notfound |
291 | jnz file_system_lfn.notfound |
292 | mov eax, [ebx] |
292 | mov eax, [ebx] |
293 | cmp eax, 1 |
293 | cmp eax, fs_NumRamdiskServices |
294 | ja .not_impl |
294 | jae .not_impl |
295 | mov ecx, [ebx+12] |
295 | mov ecx, [ebx+12] |
296 | mov edx, [ebx+16] |
296 | mov edx, [ebx+16] |
297 | add edx, std_application_base_address |
297 | add edx, std_application_base_address |
298 | add ebx, 4 |
298 | add ebx, 4 |
Line 305... | Line 305... | ||
305 | ret |
305 | ret |
Line 306... | Line 306... | ||
306 | 306 | ||
307 | fs_RamdiskServices: |
307 | fs_RamdiskServices: |
308 | dd fs_RamdiskRead |
308 | dd fs_RamdiskRead |
- | 309 | dd fs_RamdiskReadFolder |
|
- | 310 | dd fs_RamdiskRewrite |
|
Line 309... | Line 311... | ||
309 | dd fs_RamdiskReadFolder |
311 | fs_NumRamdiskServices = ($ - fs_RamdiskServices)/4 |
310 | 312 | ||
311 | fs_OnFloppy: |
313 | fs_OnFloppy: |
312 | cmp ecx, 2 |
314 | cmp ecx, 2 |
313 | ja file_system_lfn.notfound |
315 | ja file_system_lfn.notfound |
314 | mov eax, [ebx] |
316 | mov eax, [ebx] |
315 | cmp eax, 1 |
317 | cmp eax, fs_NumFloppyServices |
316 | ja fs_OnRamdisk.not_impl |
318 | jae fs_OnRamdisk.not_impl |
317 | call reserve_flp |
319 | call reserve_flp |
318 | mov [flp_number], cl |
320 | mov [flp_number], cl |
319 | mov ecx, [ebx+12] |
321 | mov ecx, [ebx+12] |
Line 327... | Line 329... | ||
327 | ret |
329 | ret |
Line 328... | Line 330... | ||
328 | 330 | ||
329 | fs_FloppyServices: |
331 | fs_FloppyServices: |
330 | dd fs_FloppyRead |
332 | dd fs_FloppyRead |
- | 333 | dd fs_FloppyReadFolder |
|
- | 334 | dd fs_FloppyRewrite |
|
Line 331... | Line 335... | ||
331 | dd fs_FloppyReadFolder |
335 | fs_NumFloppyServices = ($ - fs_FloppyServices)/4 |
332 | 336 | ||
333 | fs_OnHd0: |
337 | fs_OnHd0: |
334 | call reserve_hd1 |
338 | call reserve_hd1 |
Line 371... | Line 375... | ||
371 | pop esi ebx |
375 | pop esi ebx |
372 | mov ecx, [ebx+12] |
376 | mov ecx, [ebx+12] |
373 | mov edx, [ebx+16] |
377 | mov edx, [ebx+16] |
374 | add edx, std_application_base_address |
378 | add edx, std_application_base_address |
375 | mov eax, [ebx] |
379 | mov eax, [ebx] |
376 | cmp eax, 1 |
380 | cmp eax, fs_NumHdServices |
377 | ja .not_impl |
381 | jae .not_impl |
378 | add ebx, 4 |
382 | add ebx, 4 |
379 | call dword [fs_HdServices + eax*4] |
383 | call dword [fs_HdServices + eax*4] |
380 | and [hd1_status], 0 |
384 | and [hd1_status], 0 |
381 | mov [esp+36], eax |
385 | mov [esp+36], eax |
382 | mov [esp+24], ebx |
386 | mov [esp+24], ebx |
Line 387... | Line 391... | ||
387 | ret |
391 | ret |
Line 388... | Line 392... | ||
388 | 392 | ||
389 | fs_HdServices: |
393 | fs_HdServices: |
390 | dd fs_HdRead |
394 | dd fs_HdRead |
- | 395 | dd fs_HdReadFolder |
|
- | 396 | dd fs_HdRewrite |
|
Line 391... | Line 397... | ||
391 | dd fs_HdReadFolder |
397 | fs_NumHdServices = ($ - fs_HdServices)/4 |
392 | 398 | ||
393 | fs_HasRamdisk: |
399 | fs_HasRamdisk: |