Programming 板


LINE

※ 引述《ggg12345 (ggg)》之铭言: : ※ 引述《garyzyg (garyzyg)》之铭言: : : 标题: [问题] 请问如何 debug 一支 TSR 的 dos 程式? : : 某 dos 程式 A (没源码) 会 tsr. 小弟想对他常驻的部份做 debug, : : 请问要如何处置呢? : : 是先对 .exe/.com 作 disassemble 找到中断, 再看 routine? : : -- : : ◆ From: 61.228.83.19 : : 推 Chevelle:看它如何常驻.. how about just bpint 1c 140.112.5.10 10/01 23:25 : : → garyzyg:bpint ah=25 21 那 routine 那部份要如何 61.228.83.19 10/01 23:34 : : → garyzyg:debug 呢? 用眼睛看, 还是有 debug 可跑? 61.228.83.19 10/01 23:35 : : → garyzyg:应该是 bpint 21 ah=25 61.228.83.19 10/01 23:36 : DOS 时代的 TSR(Terminate & Stay Resident) 就是跟 OS一样的 : 常驻型程式, 执行完时还会请求 OS 认可, 可以继续占用某段记忆 : 体, 其他程式可以呼叫此段程式使之被执行. 呼叫方式通常经过 : interrupt/trap 的 int n 进行, 因此常常是某一个 ISR (Interrupt : Service Routine)的一部份, 也就是进行常驻时可能是替代原来的 ISR : 或者与原来的 ISR linking & binding , 其形式不外是 switch 式的 : 并接或者就是按序串接. 这类程式的架构与模组在 DOS 下有固定模式. : WinXX 底下的 DOS prompt 有一个很老很老的程式就叫 debug.com : 或 debug.exe 不只会做 disassemble(但限 8086 mode), 还会做 single : step 与 break-point trace . : 程式建立 TSR 前会完成 TSR binding 动作, 知道叫用点(int xx 内 : 的 branch call) 就能知道整段 TSR 的程式所在, TSR 通常都很短, : disasm 就能完整看完. 如果 TSR 是跟 keybord i/o 有关, trace/break : 就要多费心. 和 keyboard/hotkey 有关, 似乎要靠脑袋 debug. 不过小弟想到一个好方法, 可以用 dosemu/dosbox 内建的 debugger. 程式在里面执行 tsr 後 就可以 debugger 来 debug, 而不用太花脑袋了. --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 61.228.92.142
1F:推 Chevelle:nice idea 140.112.5.10 10/04 11:12
2F:→ Chevelle:这是 DOS 时代做不到的 跟用 ICE 差不多 140.112.5.10 10/04 11:13
3F:推 meltice:当初在学校在Win98的DOS下面写组语作业 117.19.66.224 10/04 11:41
4F:→ meltice:还可以边听MP3边上网 看来组语还不够底层 117.19.66.224 10/04 11:41
5F:→ meltice:原来我只是控制到那小小的DOS box而已 117.19.66.224 10/04 11:42
6F:推 ggg12345:debug程式如果自备另一套键盘与显示幕跟 140.115.4.12 10/04 11:45
7F:→ ggg12345:被监测的TSR与环境的Key/display是隔离的 140.115.4.12 10/04 11:49
8F:→ ggg12345:就可以不混淆的进行debug动作.这种方法是 140.115.4.12 10/04 11:54
9F:→ ggg12345:用滑鼠切换.这类软体都是v86虚拟机模式 140.115.4.12 10/04 12:02







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:e-shopping站内搜寻

TOP