From b0c546614912aa6288166eac5e6a6d806bd2b17a Mon Sep 17 00:00:00 2001 From: n-a-c-h <> Date: Mon, 11 Apr 2005 21:45:08 +0000 Subject: [PATCH] Removed modem code. --- zsnes/src/dos/modemrtn.asm | 453 ------------------------------------- zsnes/src/makefile.ms | 3 +- 2 files changed, 1 insertion(+), 455 deletions(-) delete mode 100644 zsnes/src/dos/modemrtn.asm diff --git a/zsnes/src/dos/modemrtn.asm b/zsnes/src/dos/modemrtn.asm deleted file mode 100644 index 48f7bc8e..00000000 --- a/zsnes/src/dos/modemrtn.asm +++ /dev/null @@ -1,453 +0,0 @@ -;Copyright (C) 1997-2005 ZSNES Team ( zsKnight, _Demo_, pagefault, Nach ) -; -;http://www.zsnes.com -;http://sourceforge.net/projects/zsnes -; -;This program is free software; you can redistribute it and/or -;modify it under the terms of the GNU General Public License -;as published by the Free Software Foundation; either -;version 2 of the License, or (at your option) any later -;version. -; -;This program is distributed in the hope that it will be useful, -;but WITHOUT ANY WARRANTY; without even the implied warranty of -;MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -;GNU General Public License for more details. -; -;You should have received a copy of the GNU General Public License -;along with this program; if not, write to the Free Software -;Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. - - - -%include "macros.mac" - -EXTSYM ComNum,ComIRQ,BaudRate,FossilUse,delay - -%ifdef __MSDOS__ -EXTSYM dssel -%endif - -SECTION .bss -NEWSYM UartType, resb 1 - -SECTION .data -NEWSYM cantinitmodem, db 1 - -SECTION .bss -NEWSYM ModemInited, resb 1 - -SECTION .data -ComPort dw 2E8h ; 1=3F8,2=2F8,3=3E8,4=2E8 -PortData dw 0,3F8h,2F8h,3E8h,2E8h - -SECTION .bss -ComInt resb 1 - -SECTION .data -BRateSel dw 000Ch,0008h,0006h,0004h,0003h,0002h,0001h - -SECTION .bss -oldhandmodems resw 1 -oldhandmodemo resd 1 - -SECTION .data -PICMaskPm db 21h - -SECTION .bss -PortNum resw 1 -CharStore resb 1 -SECTION .text - -NEWSYM ModemGetChar - cmp byte[UartType],2 - je near FossilGetChar - xor dh,dh - mov eax,[modemhead] - cmp eax,[modemtail] - je .nonewchar - mov dh,1 - mov dl,[modembuffer+eax] - inc dword[modemhead] - and dword[modemhead],2047 -.nonewchar - ret - -FossilGetChar: - pushad - mov ah,0Ch - mov dx,[PortNum] - int 14h - cmp ax,0FFFFh - je .nochar - mov ah,02h - mov dx,[PortNum] - int 14h - mov [CharStore],al - popad - mov dh,1 - mov dl,[CharStore] - ret -.nochar - popad - xor dh,dh - ret - -NEWSYM ModemCheckRing - cmp byte[UartType],2 - je near .fossil - mov dx,[ComPort] - add dx,6 - in al,dx - shr al,6 - and al,01h - ret -.fossil - pushad - mov ah,03h - mov dx,[PortNum] - int 14h - test al,40h - jnz .ring - popad - xor al,al - ret -.ring - popad - mov al,1 - ret - -NEWSYM ModemCheckDCD - cmp byte[UartType],2 - je near .fossil - mov dx,[ComPort] - add dx,6 - in al,dx - shr al,7 - and al,01h - ret -.fossil - pushad - mov ah,03h - mov dx,[PortNum] - int 14h - test al,80h - jnz .dcd - popad - xor al,al - ret -.dcd - popad - mov al,1 - ret - -NEWSYM ModemSendChar - cmp byte[UartType],2 - je near FossilSendChar - push ecx - push edx - push ebx - mov ecx,1000000 - mov bl,al -.loop - mov dx,[ComPort] - add dx,5 - in al,dx - test al,00100000b - jnz .transokay - dec ecx - jnz .loop - xor al,al - pop ebx - pop edx - pop ecx - ret -.transokay - mov al,bl - mov dx,[ComPort] ; Send the char through the modem - out dx,al - pop ebx - pop edx - pop ecx - ret - -FossilSendChar: - pushad - mov ah,01h - mov dx,[PortNum] - int 14h - popad - ret - -NEWSYM InitModem - mov byte[ModemInited],1 - cmp byte[FossilUse],0 - jne near InitFossil - mov byte[cantinitmodem],0 - cli - ; Get Port value - xor eax,eax - mov al,[ComNum] - mov ax,[PortData+eax*2] - mov [ComPort],ax - - mov dx,[ComPort] - add dx,2 - xor al,al - out dx,al - - ; Set IRQ PIC Mask Port - mov byte[PICMaskPm],21h - mov bl,[ComIRQ] - cmp bl,7 - jbe .noupper - add bl,60h - add byte[PICMaskPm],80h -.noupper - add bl,8 - mov [ComInt],bl - - ; Get IRQ handler - mov ax,204h - mov bl,[ComInt] - int 31h - mov [oldhandmodems],cx - mov [oldhandmodemo],edx - ; Set IRQ handler - mov ax,205h - mov bl,[ComInt] - mov cx,cs - mov edx,modemhandler - int 31h - - mov dx,[ComPort] - add dx,3 - mov al,00000011b - out dx,al - - ; Set Normal Modem functioning, User2 bit, and DTR - mov dx,[ComPort] - add dx,4 - mov al,00001011b - out dx,al - - ; Enable IRQ - xor dh,dh - mov dl,[PICMaskPm] ; Output to IRQ PIC Mask Port - mov cl,[ComIRQ] ; Get proper bit - and cl,07h - mov al,01h - shl al,cl - not al ; Complement since clear bit = enable - mov bl,al - in al,dx ; input to preserve other bits - and al,bl - xor al,al - out dx,al - - ; Enable interrupt to execute only on data available - mov dx,[ComPort] - inc dx - mov al,00000001b - out dx,al - sti - - ; Write baudrate - mov dx,[ComPort] - add dx,3 - in al,dx - or al,10000000b - out dx,al - mov eax,[BaudRate] - mov ax,[BRateSel+eax*2] - mov dx,[ComPort] - inc dx - push eax - mov al,ah - out dx,al - pop eax - dec dx - out dx,al - mov dx,[ComPort] - add dx,3 - in al,dx - and al,01111111b - out dx,al - - ; Initialize 16550A UART chip - mov dx,[ComPort] - add dx,2 - mov al,0C7h - out dx,al - nop - nop - in al,dx - mov byte[UartType],1 - test al,40h - jnz .passed16550a - xor al,al - out dx,al - mov byte[UartType],0 -.passed16550a - ret - -InitFossil: - xor edx,edx - mov dl,[ComNum] - dec dl - mov [PortNum],dx - mov byte[cantinitmodem],0 - mov byte[UartType],2 - mov ah,04h - mov dx,[PortNum] - int 14h - cmp ax,1954h - jne .notsuccess - xor ah,ah - mov al,00000011b ; 19200 baud, 81N - mov dx,[PortNum] - int 14h - ret -.notsuccess - mov byte[cantinitmodem],1 - ret - -modemhandler: - push ds - push eax -%ifdef __MSDOS__ - mov ax,[cs:dssel] -%endif - mov ds,ax - push edx - mov dx,[ComPort] - add dx,4 - in al,dx - and al,11111101b - out dx,al - -.next - mov dx,[ComPort] - in al,dx - mov edx,[modemtail] - mov [modembuffer+edx],al - inc dword[modemtail] - and dword[modemtail],2047 - mov dx,[ComPort] - add dx,2 - in al,dx - test al,1 - jz .next - - mov al,20h - out 20h,al - - cmp byte[ComIRQ],7 - jbe .nohighirq - mov al,20h - out 0A0h,al -.nohighirq - - mov dx,[ComPort] - add dx,4 - in al,dx - or al,00000010b - out dx,al - - pop edx - pop eax - pop ds - iretd - -NEWSYM ModemClearBuffer - mov dword[modemhead],0 - mov dword[modemtail],0 - ret - -SECTION .bss -NEWSYM modembuffer, resb 2048 -NEWSYM modemhead, resd 1 -NEWSYM modemtail, resd 1 -SECTION .text - -NEWSYM DeInitModem - cmp byte[ModemInited],1 - je .okaydeinit - ret -.okaydeinit - mov byte[ModemInited],0 - cmp byte[UartType],2 - je near DeInitFossil - cli - mov dx,[ComPort] - add dx,2 - xor al,al - out dx,al - - xor dh,dh - mov dl,[PICMaskPm] - mov cl,[ComIRQ] - and cl,07h - mov al,01h - shl al,cl - mov bl,al - in al,dx - or al,bl - xor al,al - out dx,al - mov dx,[ComPort] - inc dx - mov al,00h - out dx,al - mov dx,[ComPort] - add dx,4 - out dx,al - - mov cx,[oldhandmodems] - mov edx,[oldhandmodemo] - mov ax,205h - mov bl,[ComInt] - int 31h - sti - ret - -DeInitFossil: - mov byte[cantinitmodem],0 - jne .nodeinit - mov ax,0600h - mov dx,[PortNum] - int 14h ; Lower DTR - mov ah,05h - mov dx,[PortNum] - int 14h -.nodeinit - ret - -NEWSYM DeInitModemC - cmp byte[ModemInited],1 - je .okaydeinit - ret -.okaydeinit - cmp byte[UartType],2 - je near DeInitFossil - cli - mov al,00h - mov dx,[ComPort] - add dx,4 - out dx,al - - mov al,13 - mov dx,[ComPort] - out dx,al - - mov ecx,16384 - call delay - - out dx,al - - mov al,00001001b - mov dx,[ComPort] - add dx,4 - out dx,al - sti - ret diff --git a/zsnes/src/makefile.ms b/zsnes/src/makefile.ms index b5cdf1b0..b5598dde 100644 --- a/zsnes/src/makefile.ms +++ b/zsnes/src/makefile.ms @@ -185,7 +185,7 @@ JMAOBJ=${JMADIR}/7zlzma${OE} ${JMADIR}/crc32${OE} ${JMADIR}/iiostrm${OE}\ MAINOBJ=cfgload${OE} endmem${OE} init${OE} initc${OE} uic${OE} patch${OE}\ ui${OE} vcache${OE} version${OE} zmovie${OE} zstate${OE} zloader${OE} -DOSOBJORIG=${DOSDIR}/debug${OE} ${DOSDIR}/joy${OE} ${DOSDIR}/modemrtn${OE} ${DOSDIR}/vesa2${OE}\ +DOSOBJORIG=${DOSDIR}/debug${OE} ${DOSDIR}/joy${OE} ${DOSDIR}/vesa2${OE}\ ${DOSDIR}/initvid${OE} ${DOSDIR}/sw${OE} ${DOSDIR}/gppro${OE} ${DOSDIR}/vesa12${OE} @@ -343,7 +343,6 @@ ${DOSDIR}/vesa12${OE}: $< macros.mac ${DOSDIR}/joy${OE}: $< macros.mac ${DOSDIR}/sw${OE}: $< macros.mac ${DOSDIR}/gppro${OE}: $< macros.mac -${DOSDIR}/modemrtn${OE}: $< macros.mac ${NETDIR}/ztcp${OE}: $<