最近几天因为工作生病而厌倦了我的大脑,我决定尝试挖掘一些旧代码.我可以找到一些我写过的古代Atari ST的二进制版本,但我找不到任何来源.我确实设法挖掘了一个旧的ModeX库,这个库是我在很久以前从传奇的旧x2ftp站点的存档中编写的.
http://ftp.lanet.lv/ftp/mirror/x2ftp/msdos
爆炸从过去:-)
; Actually Sticks Us Into ModeX - With 240 Scanlines Per Page ; Set The Variable LSCAN To The Virtual Scanline Length You Want ; Trashes AX, CX, DX, DS, SI ; Shouldn't Matter Though As This Should Be The First Thing You Call! Set_X_240 PROC Call Set_Graph ; Set Mode 13h mov dx, Seq_Port mov ax, 00604h ; Index 4 (Memory Mode Reg.) In AL ; Bit 3 = Chain 4 out dx, ax ; Kill Chain 4 Mode mov ax, 00100h ; Index 0 (Reset Reg.) In AL out dx, ax ; Reset Syncronous (At End Of Cycle) dec dx ; Change Port dec dx ; To Misc. S--t Port :) mov al, 11100011b out dx, al ; Sets 480 Line Mode, 25Mhz Dot Clock inc dx ; Change Port inc dx ; Back To Sequencer Port mov ax, 00300h out dx, ax ; Restart Controller mov dx, Crtc_Port mov al, 011h out dx, al ; Select Index 11h (Vert.Retrace End) inc dx ; Data Port in al, dx ; Read In Current Bit Mask and al, 07Fh ; 01111111 - Clear Top Bit (Write Protect) out dx, al ; Un-Write Protect Index 0-7 Of CRTC Reg. dec dx ; Restore Port To Index mov ax, seg CRTC_Data_240 ; Address Of Our CRTC Data mov ds, ax mov si, offset CRTC_Data_240 mov cx, LCRTC_Data_240 ; Length Of Data repz outsw ; Chuck It At The Port mov ax, lscan shr ax, 3 ; Number Of Words Per Scan Line mov ah, al ; Into AH mov al, 013h ; Port Index 013h - Logical Screen Width out dx, ax mov NScan, 240 Call Set_Pages ret Set_X_240 ENDP
还有其他人想让自己看起来老了并张贴一些旧的学校代码吗?:-)很遗憾我没有任何68000 ASM的东西,尽管我现在甚至都不认识它!
啊......回忆:-)