home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
ftp.wwiv.com
/
ftp.wwiv.com.zip
/
ftp.wwiv.com
/
pub
/
UTILITY
/
LINK_NOW.ZIP
/
LINK_NOW.ASM
< prev
Wrap
Assembly Source File
|
1996-11-10
|
9KB
|
218 lines
``Bubba`` #2@4500.TerraNET
Wed Nov 06 17:34:31 1996
6>7>1RE: Uhhh....0
6>7>1BY: Doc #1 @9931.TerraNET0
6>7>0
6>7>1Wait. Why would you put Linker.exe into the EPREPROC.NET? When you set up0
6>7>1Linker, you are supposed to REN NETWORK2.EXE to NET2.EXE and then REN0
6>7>1LINKER.EXE to NETWORK2.EXE. so, if Linker is already scaning the incoming0
6>7>1Packets, why would you have to toss it into EPREPROC.NET????????0
6>0
6>3RE: Re: Uhhh....0
6>3BY: JAFO #1 @1.TerraNET0
6>0
6>3You should leave the "real" NETWORK2 alone, and stick LINKER.EXE and0
6>3AUTOSEND.EXE in your EPREPROC.NET files. What happens if you don't0
6>3use Linker on every network? It would be dumb to have it process packets0
6>3for all networks when only some use it...0
8Good point! You should put LINKER.EXE and AUTOSEND.EXE in your 0
8EPREPROC.NET files. Additionally, if Linker is executed from EREPROC.NET, 0
8not only will linker un-link your received packets, but you also have the0
8opportunity to link packets IMMEDIATELY after they are written, BEFORE0
8your bbs networks!0
8I have Linker executed as a logoff event, (Yes, I know, WWIV doesn't have0
8a logoff event), here is what I do. In my LOGEVENT.BAT file I have the0
8following lines:0
CD\WWIV\WWIVNET
LINK_NOW.COM
8When one of my callers logon, and LOGEVENT.BAT is executed, the program0
2LINK_NOW.COM 8runs. 2It creates 8a 2LOCAL.NET 8file in my \WWIV\WWIVNET0
8directory. The LOCAL.NET file contains a type 15 message, the kind you0
8see only once like "0Betty Joe read your mail on 10/26/968" except it0
8says "0Linker run on WWIVnet8".0
8After the caller logs off, NETWORK2 notices the new LOCAL.NET file and0
8starts up! Since 2LINKER.EXE 8is in my EREPROC.NET file, it 2runs too 8and0
8any packets that need to be linked will be processed and linked at this0
8time!0
8I created my LINK_NOW.COM file using an ordinary assembly language0
8compiler. It was real 2easy8, here is the code:0
1--------------------------------------------------------------------0
;=======================================================================;
; Author: Bubba #2@2498.WWIVnet Date: Oct 22, 1995 ;
; Codename: LINK_NOW.ASM ;
; Filename: LINK_NOW.COM ;
; Filesize: 115 bytes (after compiling) ;
; Memory required: 122 bytes ;
; ;
; This program will write the data in the string "local_net_data" ;
; to the file LOCAL.NET ;
; ;
;=======================================================================;
;=======================================================================;
; This assembly code is intended for use with Wolfware Assembly ;
; Language Compiler, Ver 2.02, (C) Copyright 1987 by Eric Tauck. ;
; ;
; Wolfware Assembly Compiler minimum system requirements: ;
; an IBM PC or compatible 8086 computer, MS/PC DOS 2.00 or up, ;
; and about 100 kilobytes of free memory. ;
; ;
; Wolfware Assembly Compiler (WASM202.ZIP) is available at: ;
; 1. The Unicorn Forest BBS (Of course!) (405) 536-5863 ;
; Logon as GUEST, password GUEST, or whatever you please ;
; 2. http://oak.oakland.edu/pub/simtelnet/msdos/asmutl/wasm202.zip ;
; and just about any other SimTel mirror site ;
;=======================================================================;
;-- housekeeping, save the registers
push BX ;push register values onto stack
push CX
push DX
push DI
push SI
push DS
push ES
;-- create and open a file
mov DX, offset file_name ;identify filename pointer
sub CX, CX ;normal file attribute
mov AH, 3Ch ;create a file function
int 21h ;execute
mov word Handle, AX ;store new file handle
;-- write to the file
mov DX, offset local_net_string ;identify data pointer
mov CX, 33h ;identify length of data string
mov BX, word Handle ;identify file handle
mov AH, 40h ;write file function
int 21h ;execute
;-- close the file
mov BX, word Handle ;identify file handle
mov AH, 3eh ;close file function
int 21h ;execute
;-- housekeeping, restore registers
pop ES ;return register values from stack
pop DS
pop SI
pop DI
pop DX
pop CX
pop BX
;-- exit the program
mov AX, 4c00h ;exit program function
int 21h ;execute
;-- data
local_net_string db 0C2h, 09h, 02h, 00h, 0C2h, 09h, 00h, 00h,
db 0Fh, 00h, 00h, 00h, 00h, 00h, 00h, 00h,
db 00h, 00h, 1Bh, 00h, 00h, 00h, 00h, 00h,
db 'Linker v3.7 run on WWIVnet.'
file_name db 'local.net'
Handle db 00h, 00h
;-- end
1--------------------------------------------------------------------0
8The data in the "local_net_string" must be for your BBS!0
81. 2To 8system. We are at 224988.WWIVnet.0
8 2498 decimal 2498 decimal0
8 ------------ = ------------ = 9 decimal, and 194 decimal remainder0
8 100 hex 256 decimal0
8 9 decimal = 209 8hex0
8 194 decimal = 2C2 8hex0
local_net_string db 02C20h, 2090h, 02h, 00h, 0C2h, 09h, 00h, 00h,
db 0Fh, 00h, 00h, 00h, 00h, 00h, 00h, 00h,
db 00h, 00h, 1Bh, 00h, 00h, 00h, 00h, 00h,
db 'Linker v3.7 run on WWIVnet.'
82. 2To 8user number. Bubba#220
8 2 decimal 2 decimal0
8 --------- = ------------ = 0 decimal, and 2 decimal remainder0
8 100 hex 256 decimal0
8 0 decimal = 200 8hex0
8 2 decimal = 202 8hex0
local_net_string db 0C2h, 09h, 2020h, 2000h, 0C2h, 09h, 00h, 00h,
db 0Fh, 00h, 00h, 00h, 00h, 00h, 00h, 00h,
db 00h, 00h, 1Bh, 00h, 00h, 00h, 00h, 00h,
db 'Linker v3.7 run on WWIVnet.'
83. 2From 8system. We are at 224988.WWIVnet.0
8 2498 decimal 2498 decimal0
8 ------------ = ------------ = 9 decimal, and 194 decimal remainder0
8 100 hex 256 decimal0
8 9 decimal = 209 8hex0
8 194 decimal = 2C2 8hex0
local_net_string db 0C2h, 09h, 02h, 00h, 02C20h, 2090h, 00h, 00h,
db 0Fh, 00h, 00h, 00h, 00h, 00h, 00h, 00h,
db 00h, 00h, 1Bh, 00h, 00h, 00h, 00h, 00h,
db 'Linker v3.7 run on WWIVnet.'
84. 2From 8user number 200
8 (the same decimal to hex conversion as above)0
local_net_string db 0C2h, 09h, 02h, 00h, 0C2h, 09h, 2000h, 2000h,
db 0Fh, 00h, 00h, 00h, 00h, 00h, 00h, 00h,
db 00h, 00h, 1Bh, 00h, 00h, 00h, 00h, 00h,
db 'Linker v3.7 run on WWIVnet.'
85. File 2type 8is 2158, those little "Betty read your mail..."0
8 (the same decimal to hex conversion as above) 15 decimal = 2F 8hex0
local_net_string db 0C2h, 09h, 02h, 00h, 0C2h, 09h, 00h, 00h,
db 20F0h, 2000h, 00h, 00h, 00h, 00h, 00h, 00h,
db 00h, 00h, 1Bh, 00h, 00h, 00h, 00h, 00h,
db 'Linker v3.7 run on WWIVnet.'
86. not used in this type, set to 200
local_net_string db 0C2h, 09h, 02h, 00h, 0C2h, 09h, 00h, 00h,
db 0Fh, 00h, 2000h, 2000h, 2000h, 2000h, 2000h, 2000h,
db 2000h, 2000h, 1Bh, 00h, 00h, 00h, 2000h, 2000h,
db 'Linker v3.7 run on WWIVnet.'
87. How 2long 8is the string "Linker v3.7 run on WWIVnet."?0
8 (the same decimal to hex conversion as above) 27 decimal = 21B 8hex0
local_net_string db 0C2h, 09h, 02h, 00h, 0C2h, 09h, 00h, 00h,
db 0Fh, 00h, 00h, 00h, 00h, 00h, 00h, 00h,
db 00h, 00h, 21B0h, 2000h, 2000h, 2000h, 00h, 00h,
db '2Linker v3.7 run on WWIVnet.0'
8 ^^^^^^....................^0
8 123456....................27 decimal = 21B 8hex0
8Kool huh?0