플로피 디스크에 관한 프로그램을 만들기 위해 필요한 것은?

Fe.head의 이미지

이거 너무 무책임한 질문 같은데요..

플로피 디스크에 관한 프로그램을 만들기 위해 필요한 것은 무엇일까요?

가장 가까운것에 해당하는것이 디스크 포멧이 가장 가까울것 같은데요.

이 디스크 포멧하는 프로그램을 만들어 보고 싶은데..

특정 트렉에 있는 정보를 읽어오고 특정 트랙및 섹터에 있는 곳에 데이터를 써보고..

이런 것을 잘 설명 해주거나 길을 제시주는 책이나 사이트 없나요?

되도록이면 한글 사이트로.. 제가 영어에 무지 약해서.. :(

codebank의 이미지

해당되는 자료를 찾다가 발견한 곳입니다.

http://www.ctyme.com/rbrown.htm

랄프 브라운(Ralf Brown)이라고 아주 유명한 분이죠.
특히나 MS-Windows로 넘어가기전 대부분을 인터럽트로 처리할 때 거의 교과서적인
문서로 유명한 분입니다. 저분이 만든 인터럽트 리스트는 아주 유명했지요.
잊고 있었는데 덕분에 좋은 자료를 구한 느낌입니다.

Floppy Disk제어는 어렵지는 안지만 그렇다고 만만하게 볼 부분도 아니죠.
지금은 관심도 많이 사라진 Pctools라는 프로그램을 만들어 보겠다고 덤벼서 돌도끼같은
좋은 소스도 얻을 수 있었고 그걸 바탕으로 나름대로 분석해서 프로그램도 만들어보고
했는데 지금은 소스도 없어지고 인터넷에는 그당시 자료들도 별로 없어보이는 군요.
서적으로는 아마 정보문화사껄로 기억되는데 PC 시스템 프로그래밍이란 유명한
책이 있었죠. 지금도 판매를 하고 있는지 모르겠지만 이 책에 프로피에 관련한 인터럽트
부분이 나와있었던것으로 알고 있습니다.

소스로 나와있는것 중에는

http://uranus.it.swin.edu.au/~jn/linux/rawwrite.htm
http://ftp2.tw.freebsd.org/pub/FreeBSD/releases/pc98/tools/rawrite.c

이것이 가장 좋은 것이라고 생각합니다. rawrite라고 DOS에서 동작하는 프로그램으로
이미지를 플로피 디스크로 옮겨주는 역할을 하는 프로그램이죠.
첫번째것은 대학에서 만든 linux용(굳이 구분하자면...)이고 두번째것은 FreeBSD에서
작성한 소스입니다.
소스를 살펴보면 알겠지만 간단한 인터럽트를 이용해서 데이터를 써 넣는 역할을
하는 소스입니다.
Floppy같은 하드웨어 제어는 고급언어보다는 Assembly같은 언어를 사용해야하며
ax, bx, cx, dx, ds, cs같은 레지스터의 역할을 알아야합니다.
각 레지스터에 어떤값이 들어감에 따라서 작동하는 방법이 달라지므로 Ralf Brown의
인터럽트 리스트를 꼭 참고해야만 합니다. :)

그럼 좋은 결과 있길 바라겠습니다.

------------------------------
좋은 하루 되세요.

Fe.head의 이미지

감사합니다. codebank님.

좋은 하루 되십시요..

책은 찾아 봤는데. 없군요...

일단 사이트를 잘 활용을 해봐야 될것 같네요.
아구.. 영어..싫어.. :cry: :evil: :cry:

고작 블로킹 하나, 고작 25점 중에 1점, 고작 부활동
"만약 그 순간이 온다면 그때가 네가 배구에 빠지는 순간이야"

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.