![]() |
China DOS Union-- Unite DOS · Advance DOS · Grow DOS --Union site: www.cn-dos.net Forum site: www.cn-dos.net/forum |
| Guest | Log in | Register | Members | Search | China DOS Union |
|
中国DOS联盟论坛 The time now is 2026-08-01 20:58 |
48,037 topics / 350,122 posts / today 2 new / 48,249 members |
| DOS开发编程 & 发展交流 (开发室) » How to directly read and write to the hard disk using BIOS's IO? |
| Printable Version 1,550 / 8 |
| Floor1 zhgwbzhd | Posted 2006-03-13 21:27 |
| 高级用户 Posts 187 Credits 506 | |
| Floor2 darkradx | Posted 2006-03-13 23:01 |
| 高级用户 Posts 420 Credits 972 | |
|
ATA Command
BIOS INT13 DOS INTXX Never heard of BIOS IO |
|
| Floor3 qb45 | Posted 2006-03-14 12:19 |
| 高级用户 Posts 194 Credits 677 | |
|
Reading and writing to I/O ports in QBASIC is very simple. OUT is for writing to a port. INP is for reading from a port. I don't know if the original poster knows how to use QBASIC.
|
|
| Floor4 zhgwbzhd | Posted 2006-03-22 11:56 |
| 高级用户 Posts 187 Credits 506 | |
|
Brothers, int13 and interrupts under DOS are all very simple. I just want to bypass Lenovo's protection system and how to write to a sector. I think if I directly issue instructions to the CPU, can that work? How should I do it? How to handle the ATA Command?
|
|
| Floor5 qb45 | Posted 2006-03-22 13:31 |
| 高级用户 Posts 194 Credits 677 | |
|
It's very simple. If you know a programming language, it's very simple. Do you know qbasic!
If you do, you can take a look at the post I wrote about getting the hard disk serial number. That program directly uses I/O ports. Because the BIOS doesn't provide the service of the hard disk serial number, so you must send instructions to the hard disk's ports such as (&H170......) by yourself, and then read the serial number. Note that this serial number is not the number of each partition of the hard disk. Some netizens say that the C drive, D drive, etc. all have serial numbers. In fact, that's the volume label! The advantage of reading and writing the hard disk through I/O instructions is: you can bypass the services provided by the BIOS, so you can break through restoration software, and you can read and write hard disks no larger than 137GB on old 486 computers! Of course, the more important use is not here. There are many hard disk-specific commands that must be implemented through I/O instructions, such as writing negative tracks, adding bad sectors to the G table, etc. All powerful hard disk repair software use I/O instructions, such as the PC3000 and MHDD that we are familiar with. It is recommended that you learn a programming language. C language is the best choice! Although I don't know C language, I only know qbasic! |
|
| Floor6 zhgwbzhd | Posted 2006-03-22 14:48 |
| 高级用户 Posts 187 Credits 506 | |
|
To be honest, C language is acceptable. Or directly using assembly can also be done roughly.
I'll first look for your post. Thanks qb45. By the way, is the qb moderator in programfan you? The names are the same. |
|
| Floor7 zhgwbzhd | Posted 2006-03-22 15:35 |
| 高级用户 Posts 187 Credits 506 | |
|
qb45: I can't find your post. I saw your post about the restore card before, but it's okay without the restore card, but it doesn't work after installing it. What should I do?
|
|
| Floor8 zjnbwdj | Posted 2006-03-23 11:58 |
| 中级用户 Posts 137 Credits 300 | |
|
Why not name it QB71? Isn't there a version 7.1?
|
|
| Floor9 gmy | Posted 2006-03-27 15:59 |
| 版主 Posts 392 Credits 1,113 | |
|
If only writing the hard disk hidden sector, HDSECT is enough (it's in the Super Emergency Disk)
|
|
|
[ Contact the Union admin team -
中国DOS联盟 -
Standard version ] Sponsored by ifanr Inc | © 2001–2023 |