28/12/95 - mIRC v3.9 Fixes/Additions: 1.Fixed the /join KEY bug. 2.Add -q switch to /raw which makes the /raw command work "quietly", not printing out what it's sending. 3.Fixed channel folder dialog not remembering added/deleted channels when pressing OK. 4.Now /ignores invites as well. 5.Fixed the remote DO command. 6.Can now handle &channels, fully supported in aliases, popups, and remote definitions. 7.Redecorated. Tending towards simple and uncluttered menus and interface. 8.Removed font dialog, can now change a font only from a windows system menu. 9.Can now do /me or /action in dcc chat windows. 10.The 32bit under 95 now saves logs and buffers using the full length filename. 11.ON TEXT etc. now allow wild card matches using multiple * in the match text. NOTE: the text matching routine in ON TEXT etc. doesn't use the = sign anymore, as it's now redundant. 12.Found bugs in the wildcard matching routine while making ON TEXT work with it. Fixed. 13.Made Tabs in options dialog more 95-ish. The bold font is still there though, sorry, I like it! 14.mIRC now does NOT reply to unknown ctcp messages, it just prints them in your window as usual and then ignores them (as per the RFC). 15.Aliases now work better when called from remote definitions. 16.Fixed -l# switch in play command. 17.Improved positioning of various dialogs. 18.DALnet URL catching on joining a channel now works. 19.Nicks in notify list are no longer forced to lowercase. 20./save can now be used in an alias with | separators. 21.Added -stext option to $read, which scans the specified file for a line beginning with the specified text. 22./pop delay is now randomly *close* to the number you specify as a delay. 23.Fixed /server N (specifying server number). 24.Fixed window bug possibly related to dcc gpfs. 25.Added -u# switch to /ban command which specifies delay time before unbanning the specified ban. Minimum delay time is 10 seconds. If no number is specified, it defaults to 30 seconds. eg. /ban -u15 nick 26./fingering a nick now only adds the nick's address to the fingered addresses list, not the users whole irc address. 27.Now allows an unlimited number of /timers. 28.Fixed ini specification on command line. 29.Improved dynamic memory allocation in various places. 30.Added notify list window. Can use the toolbar notify button or /notify [-sh] to show/hide the window. Please note that there is a minimum window width under 95 that I haven't been able to override. 31.Address returned by IAL was sometimes invalid. Fixed. 32.Added [-ar] switches to /notify, /protect, /ignore, which forces the command to -add or -remove a nick instead of toggling it. 33.Added $site identifier for remote addresses. eg. for khaled@mardam.demon.co.uk $site = mardam.demon.co.uk 34.Now allows /sound in dcc chats. 35.Added minimal DDE support, as well /dde command and a $dde identifier, to be expanded. See DDE section in help file for description 36.Added "Edit" button for editing finger file in options dialog. 37.Can now access popup menus in the notify, URL, and channels list window through the keyboard. Pressing RETURN performs a "double-click", pressing SPACE pops up the popup menu. 38.Added Alt-N for notify and Alt-U for URL windows. 39./msg command now by default doesn't switch to the window you're sending a message to unless you specify the [-s] switch. eg. /msg -s hiya! 40.Added /timestamp [on|off] command. 41.Added /partall command which parts all the channels you're currently on. 42.Added "Minimize DCC get window" option. 43.Added $adate (for US style month/day/year), and $fulldate which spells it all out. 44.Added a "time to activate" option to the /timer command, eg. /timer1 11:30 1 1 /say It's now 11:30am 45.Fixed "filename" in quotes with no spaces bug. 46.Fixed using $?="text" identifier. 47.Added $file identifier, eg. in a popup menu item: Play Wave:/wavplay $file="Select a Wave!" c:\waves\*.wav 48.Fixed disappearing aliases/popups/remote bug, where filenames for each of these were being reset to the mirc.ini file. 49.Added a "/timers off" switch which allows you to turn off all active timers. 50.Alt-L now pops up the Channels List dialog. 51.Added /disconnect command, hard disconnect from server without a /quit. 52.Fixed ON SNOTICE reacting twice to server notices. 53.Fixed/Improved other bits and pieces. 25/11/95 - mIRC v3.8 Fixes/Additions: 1.Added option to show invites in active window. 2.Fixed $! bug. 3.Added option to auto-resume existing files. 4.Fixed /echo with invalid parameters gpfing. 5.Option dialog now remembers it's "view" across sessions. 6.Paused op wasn't clearing a nick from it's list immediately if a nick parted or quit, but had to timeout first. 7.Added /speak command which uses monolog to speak the specified text. 8.Added /dns which resolves addresses. If mIRC sees a "." in the name you specify it assumes it's an address and tries to resolve it. Otherwise it assumes it's a nickname and does a /whois to find the users address and then looks it up. If you give it an IP address, it looks up the host name. 9.Removed small users window in remote dialog, now using one big window for users, commands, and events. 10.The Add Dialog has been discontinued. Check out the alias, popup, and remote dialogs for the improvement. IT IS *HIGHLY* RECOMMENDED THAT THE ALIAS, POPUP, AND REMOTE SECTIONS BE SAVED SEPERATE FROM THE MAIN MIRC.INI FILE FROM NOW ON. THE MIRC.INI CAN'T HANDLE THE STORAGE OF LARGE AMOUNTS OF INFORMATION AS REQUIRED BY THE ALIAS, POPUP, AND REMOTE SECTIONS. 11.Finally fixed DCC Send/Get windows sometimes not auto-closing at end of transfer (?) 12.Right-clicking in a non-active window will now bring it to the top and make it active. 13.Fixed socket error message when running second copy of mIRC (didn't actually affect anything). 14.For new users, mIRC no longer copies the mirc.ini to the windows directory but leaves it and uses it in the same directory as the EXE. However, if it finds an mirc.ini in the windows directory it will use it (to remain compatible with older users). 15.Small fixes relating to Function keys. 16.Can now use /load -apuce or /save -apuce to load and save aliases, popups, and remote sections from the command line. NOTE: You can only refer to one section at a time, so you can't do /load -ap some.ini. 17.All memory in the parsing and remote routines is now allocated dynamically. 18.Added ignore options to dcc send/chat in the dcc options dialog. Can also use /sreq and /creq (send request and chat request) with the parameters [ ask | auto | ignore] from the command line. 19.Added "ON CHAT:text:/msg ..." and ON SERV events to scan text in dcc chat windows and fileserver windows. 20.Added command line option to connect to a server and join channels which is more of a standard WWW link definition: //server:port/#channel,#channel 21.Fixed GPF problem for some users when quitting mIRC (?) 22.Added /flush [levels] command. This clears the remote user list of nicknames that are no longer valid. For each nick in the user list that matches the specified levels mIRC checks to see if that nick is on any of the channels that you are currently on. If not, the nick definition is removed from the user list. If you do not specify [levels] then mIRC clears all nicks from the user list that don't exist on channels you are on. 23.Added "me" prefix to remote definitions, eg.: me:1:ON JOIN:/msg etc... This limits a command definition to reacting only to events caused by your client. This is useful in case you use Bots which have the same address as you. 24.The address in the Finger dialog now defaults to the last address which was fingered. 25.The /play command has been improved in a major way, it can now queue requests (see the help file!) 26.Fixed bug with highlighting in query windows. 27.Added Finger server (must be set up in a certain way, see the help file on how to do this). 28.Added ON SNOTICE event, which listens for server notices and can filter them ie. prevent them from being displayed. 29.Remodelled the setup dialog. Can now also store an unlimited number of servers. 30.If /finger sees a "." in the parameter you give it, it will assume it's an address and will finger it, otherwise it will assume it's a nickname and will do a /whois on the nick to find their address and use that for the finger. 31.Added option to change tooltip delay. 32.Split the "Beep on window message" option into two... "Beep on channel message" and "Beep on query message". 33.Fixed the notify bug which would result in mIRC telling you all the people on your notify list are on... then off... then on... then off... 34.Simplified /timer code and fixed a small bug in it. 35.Command line window buffer has increased to 30 lines. 36.Now catches server numeric 328 for URL description when joining a channel on DALnet (they might not have implemented this yet). 37.Fixed toolbar buttons colours when the default system colours are changed. 38.The 32bit mIRC can now dcc send/get LFN's with spaces in them. Unfortunately, other clients won't be able to receive these properly! See the "DCC Send" section in the help file which explains the problem. You can also do: /dcc send nickname "this is a.text file" 39.Added -nnick1,nick2 command line option which sets your nicks to these values. 40.Overhaul of irc and parsing routines, simplified and speeded up. 41.Added [on | off | close] to /url command to turn on/off catching urls and to close the URL window. 42.Added option "Show modes in channel". 43.Now gives the reason why you can't join a channel. 44.If you have "rejoin channel when kicked" turned on and you are kicked, mIRC will keep the channel window open while it tries to rejoin and will only close it if it can't. 45.If a /play filename doesn't have a directory spec. it defaults to the mirc.exe directory. 46.Added a flexibile /write command which writes lines to a file. 47.Added "Show queries in active channel window" which shows private messages from other users in a channel window without opening a query window. 48.Added "TAB" key putting "/msg nickname" into the editbox where "nickname" is the nick of the last person who messaged you. If you press TAB repeatedly it cycles through the nicks of the last five people who messaged you. 49.Now shows who set the topic and at what time when you join a channel on Undernet and DALnet. 50.Fixed small bug with the /sound command not checking properly if a sound file exists. 51.The Options dialog now uses Tabs. I had trouble using existing TabDialog DLL's, so I coded my own Tab display routines. 52.Fixed /channel dialog bug which would occur if you typed /channel repeatedly while it was in the middle of retrieving the channel info. 53.Fixed a problem with /whois replies, the format of the reply has changed and is hopefully clearer now. 54.Can now also define Shift and Control Function key definitions. 24/10/95 - mIRC v3.72 Fixes/Additions: 1.Fixed $parms not being passed in a redirection. 2.Can now /play to any channel/nick without needing to have that window already open. 3.Added -ttopic option to /play which looks for the specified [topic] in a text file and plays it to the specified nick/channel. 4.Added $pnick identifier which refers to the nick/channel which is currently being played to, so you can use it in /played commands. 5.Allows #$parmN to force a parameter to be a channel. 6.Fixed DCC Resume filesize bug. 7.Added option to show notifies in active window. 8.Completely reorganized the Options dialog as it was too crowded and it was getting harder to add new options. Now divided into sections, and also incorporates the options in the extras, url, sounds, and ident dialogs. The menus and toolbar buttons have been re-organized accordingly. 9.Fixed QUIT bug when exiting mIRC while still connected. It was sending a part instead of a quit to the server. 10.Fixed /timer not releasing it's memory in certain situations. 11.Fixed positioning of : in some raw commands. 12.Fixed setting of focus to windows. 13.Added option to dump joins/parts to status window. 14.Now shows DCC transfers percentage/size at head of window title for win95 users. 15.Messages from irc ops of the form $address or #address are now displayed in the server window in pretty purple as opposed to opening up a query window. 16.Added "clear list" button to dcc chat dialog (the DCC Send dialog uses the same list). 17.The /pop delay value can be up to 15 seconds now. 18.The weird DCC Send dialog bug was fixed (?) 19.Improved copy/paste routine memory allocation. 20.Fixed /sound with invalid parameters gpfing. 21.Fixed some toolbar colours not being displayed correctly for some buttons. 22.Number of channels in channel list window is now shown at beginning of title. 23.Text printed with the /echo command is now wrapped. 24.Added $r(v1,v2) identifier, returns random number or letter between v1 and v2. 25.Fixed Ident server time-out bug. 12/10/95 - mIRC v3.7 Fixes/Additions: 1.An *iconified* channel list window is not restored if a /list is done, instead it's icon is placed above current windows (without focus) for easy access. 2.The Join Channel dialog can now handle multiple selections. 3.The /timer can now work with aliases again. 4.Can now prevent an identifier from being evaluated the first time through the alias routine by prefixing it with a ! for example: $!read, $!url, $!me, etc. This allows you to use it in a /timer command if you want the identifier to be re-evaluated every time. 5.Fixed /channel dialog bug and improved memory allocation for the ban list. 6.Fixed bug in status window sizing. 7.Fixed Timer dialog bug, when selecting cancel timer wasn't being reset correctly. 8.Improved grouping of switches in options dialog. 9.Fixed "disconnected" bug while trying to connect to another server if already connected to one. 10.Cleaned up popup menu routines. 11.Major improvement in robustness of input, general irc, and remote routines. BACKUP YOUR MIRC.INI FILE(S) 12.Wrote my own read and write INI routines for parts of the mirc.ini file since the standard INI routines were too slow. Loading and saving is almost instant now. 13.Fixed windows not being saved/closed properly on exit. 14./play now works when used in remote commands. 15.Added /echo command which prints text in the specified window (for debugging purposes). 16.Now using 0x04L in dialog definitions so that 3D dialogs under win95 are automatic. 17.Can now do "/server N" where N is the Nth server in the server list. 18.Fixed font selections not being saved correctly. 19.Added URL catcher window which automatically catches URLs from text in channels etc. and stores them in a listbox. You can then send a URL to your WWW browser directly through mIRC. Type /url [-d] to open the window. Use -d to clear all ? marked items before showing the list. Only Netscape Navigator is supported at the moment as I couldn't get other browsers to work properly. (nb. Netscape Navigator is a trademark of Netscape Communications Corporation). 20.If a nick in the notify list is prefixed with a + sign a /whois is done on it on a notify. 21.Added sounds dialog and a new /sound command which allows multiple users on a channel to hear sounds at the same time (assuming they have the same wave files). format: /sound [nick/channel] 22.Fixed problem with % in channel names (and other things). 23.Fixed channel dialog "Key already set" bug. 24.Added $url identifier which references the currently active URL in your WWW browser. 25.Added option in extras dialog to redefine command char. 26.Now automatically sets cursor to last edited window in remote and popup dialogs. *** NOTE NOTE NOTE IMPORTANT CHANGE *** 27.Now uses a different format for commands/events: Old format: 1:PING:/notice *1:$nick hi there New format: 1:PING:/notice $nick hi there This greatly simplifies processing, the routines are now probably more than twice as fast as before. mIRC will automatically detect and convert old format definitions on startup (and when /add is used). 28.mIRC now maintains an internal list of nick!user@address for all users that are on the same *channels* as you. Whenever a /guser, /ruser, or /ban is issued, the internal list is searched first to find the nick's address. If no match is found, the normal /whois stuff is done. 29.Now opens log files in shared mode. 30.The nickname in the DCC Send dialog now defaults to the last nick to which a file was sent. 31.Added $snicks which returns a list of the selected nicks in the current channel listbox. The list is in the form: nick1,...,nickN, so you can only use it in commands which take multiple nicks. 32.Greatly improved/simplified address matching routine. 33.Can now do /ignore [type] which looks up the specified nick's address by doing a /whois, same as the /auser, /ban, etc. commands. 34.DCC Get dialog now allows you to specify a different directory for the incoming file. 35.In the setup dialog, a server is highlighted after it is added to the server list. 36.The nickname in the DCC Chat dialog now defaults to the last nick that was chatted to. 37.Aliases can now be called from popup, remote, timer, play, and any other definitions. You can now also call several aliases on one line seperated by a | like normal commands. eg. 1:HELP:/help1 $nick | /help2 $nick (Aliases still can't call other aliases). 38.Can now have up to 30 timers, also improved memory allocation for timers. 39.Fixed bugs with the /add function. 40.Fixed Clipboard missing last character bug (?) 41.Default directories for the file/dir dialogs weren't being set correctly. 42.The /notify command was checking twice instead of only once for nicks. 43.The /timer command now also remembers the parameter line that was around when the /timer was issued. 44.The 32bit mIRC should now handle LFNs okay. 45.Can now do level comparison for ON KICK, ON OP, and ON DEOP, prefix a line with <,>,<=,>=,<>,= compares levels of eg. kicker and kicked and only executes definition if true. 46.Attempted improvement and cleaning up of server oriented commands and their replies. 47."signon time" in a /whois on the undernet and dalnet is now shown correctly. 48.Can now specify a server on the command line eg. -sirc.server.addr:6667 and mirc will connect to that server on startup. (You can combine this with the -j parameter to force it to join specific channels too). 13/09/95 - released mIRC v3.64 patch 1.Fixes the *1-3 type bug. 11/09/95 - mIRC v3.64 Fixes/Additions: 1.Fixed Local Host and IP address bug, added options in the setup dialog. Now works for any combination of requirements for people with different types of internet connections (see Setup in mirc.hlp!) 2.$read command improved so you can specify a line number with [-l#]. For example: /silly /say $read -l5 silly.txt This will read line 5 of silly.txt. 3.Now using "Common Dialogs" for file/directory selection, as well as for the DCC Send dialog (Long filenames are NOT yet supported). 4.Optimized Remote routines - should be faster now. 5.Can now use $read in remote definitions. For example: 1:TEST:/notice *1:$nick I said " $+ $read c:\langs\mirc\test.txt $+ " 6.Can now store up to 50 IRC server addresses in Setup dialog. Storage format in mirc.ini has changed, but will still read the old format. 7.Finger button now pops up a red flag while finger is busy. The flag disappears when finger has been completed. 8.Bug with Maximized mIRC window fixed. 9.Finger and Timer dialogs now popup under their respective buttons. 10.Added "Channels Folder" button which allows you to join a channel as well as maintain a list of your favourite channels. 11.Added "List Channels" button which pops up the List parameters dialog, allowing you to quickly list channels. 12.Fixed NT GPF bug when using toolbar. 13.Added -j<#channel> command line option. For example: mirc.exe -j#mirc,#friendly,#etc The specified channels will be joined on connect. You MUST have an mirc.ini with the "Connect on startup" option selected. 14.Fixed another bug with using * to begin a non-parameter identifier. eg. *mardam.demon* in aliases/etc. 15.The /auser /guser and /ruser commands can now handle multiple levels. They have only been extended, so they are still compatible with your previous formats. /auser [-a] /guser [-a] [type] /ruser [level(s)] [type] For /auser /guser, the default is to replace any existing user with the specified levels (as usual). The [-a] option means add the specified level(s) to an existing users levels. The /ruser command removes the specified levels from an existing user. If all levels are removed for a user, the user is removed. See the Remote section in the Help file! 16.Can now do /mode # +oooo nick1 nick2 nick3 nick4 17./play can now be used in a remote/event definition. 18.Extended the /rlevel command to also work with multiple levels. /rlevel [-r] If the [-r] is NOT specified, it works as usual. If the [-r] IS specified, the specified level(s) are removed from users that have them. If a user's levels are ALL removed, the user is removed. 19.Fixed bug with Green box being drawn around iconized window in response to wrong messages. 20.Fixed several bugs in /play with using -r and -l. The format has changed slightly to: /play [-crl#] [delay] This now allows you to specify a delay for -r and -l, You must now specify the line number like this: /play -l24 file.txt 1000 21.Text colours are now ok when using > 256 color setup. 31/08/95 - mIRC v3.6 Fixes/Additions: 1.Highlight Box around an Icon now turns green if a highlighted word is spoken in a window. 2.Fixed Ping Pong bug which was preventing lines from being sent properly to the server. 3.Fixed Editbox/Colors bug in Extras dialog. 4.Inserting blank lines in Remote/events/aliases between commands would lead to loss of following definitions. 5.Channel list window would clear if you disconnected and then connected again. 6.Aliases, Remote Users, Commands, and Events definitions are now unlimited. ie. you can have as many as you want, however the limitation is the size of the editbox (around 30k?). 7.Fixed font dialog bug when tabbing with cursor keys. 8.Popups are still limited to 300 menuitems for each popup menu. 9.Max. length of a line in aliases, remote, and popups is approx. 600 chars. Same applies to lines in the Options dialog. 10.Now allows a non-op to change topic in channel dialog. 11.Fixed :) bug. 12.Fixed /auser /guser bug. 13.Fixed /channel dialog title bug. 14.Added a simple NON-configurable toolbar with tooltips. A Configurable toolbar would take a lot of work, so I probably won't get around to adding it (so don't ask! :) 15.Fixed ctcp PING reply missing a Ctrl-A at the end (?) 16.Specifying a /who *146.219* numerical address would mess up because the *1 is a parameter specifier. mIRC now checks to see if there is a . in the number, and if so it doesnt try to expand it. 17./play command can now play single lines randomly picked from a file (a specific line can also be specified). The format is: /play [-crl] [channel/nick] [delay/linenumber] Using -r means pick a line randomly, using -l means pick a specific line specified by linenumber. The first line in the file MUST specify the number of lines in the file. Any *1 $1 etc. identifiers CANNOT be used in the played line. 18.Added $read identifier which picks a line randomly from a file. eg. /say $read c:\funny.txt /kick # $1 $read c:\kicks.txt The first line in the file MUST specify the number of lines in the file. $read will insert ANY text, even commands with identifiers, and these will work like normal commands. 19.Added Fast Send checkbox to DCC Send dialog. 20.Fixed scrolling keys in Channel list and finger windows. 21.Made Font list longer in font dialog. 22.Added "auto-join on invite" option to options dialog. An auto-joined channel is initially minimized (this might not always work for various reasons...) 23.Added Function key support F1 to F12. Define in the alias window like a normal alias for example: /F1 /say Hello! /F5 /query $1 (for use on nick listbox in channel window) 24.Font width measurement for copy/paste wasn't correct for certain types of fonts. 25.Fixed problem with minimized windows being sized wrongly. 26.Fixed /channel bug. Now times out after 30 seconds, at which point another /channel can be issued. BUT if the old /channel command is replied to, your status window will fill up with ban list information for that channel. No way around this I'm afraid! 13/08/95 - mIRC v3.51 (minor update) Fixes/Additions: 1.Fixed garbage character output bug. 2.mIRC16 wasn't recognizing version reply from Win95. 3.Making mIRC active with a click wasn't setting the focus to the active window correctly. 4.Fixed security bug in the fileserver. 7.Fixed $day bug. 8.Removes unused bold/italic/etc. characters from lines. 9.Fixed ON MODE bug with +/-k. 10.Fixed GPF bug in on mode/servermode. 11.Fixed Reset bug, wasn't resizing small windows properly. 12.mIRC wasn't outputting to the status window if it was starting out maximized. 13.The /auser, /guser, /ruser, /enable, and /disable commands now do NOT save changes immediately to the INI file when they are used. Remote information is now saved either on exiting mIRC, or if the remote dialog is opened/closed. 14.Now uses the ctl3d dialogs as default. The -d is ignored, but you can now use -n to disable the 3d dialogs. 15.Complete dialog interface improvements (for mook ;) 16.Commands using $* were not processing commands following them. 17.Fixed socket() initialization bug in various routines. 18.Improved how mIRC uses/gets your local hostname and ip address. 19.Fixed fileserver dirinfo.srv bug. 07/08/95 - mIRC v3.5 Fixes/Additions: 1.Using IP address of a server now works...! 2.A ctcp ACCEPT/RESUME now doesn't look at the filename to make a match but only at the port number. 3.Fixed perform option being executed after every MOTD. 4.Notify on initial connect is now done just before Perform option. 5.Fixed bug in displaying wrong Server Name in titlebar after changing server name in setup. 6.Scrollback buffer wasn't freeing lines properly. 7.Added $time, $day, and $date as parameter types. 8.Prefixing a remote event with '*' means it should only be performed if you have Ops on the event channel. 9.Optimized Text Copy routine - now faster/smoother. 10.Fixed divide by zero GPF in /pop routine. 11.Modified Op status checking routine. 12.Added a font dialog. 13.Width of user listbox in channel is now measured properly to take account of fixed/variable width fonts. 14.Improved mode-change handling routine. 15.ON ACTION now works for actions (same structure as ON TEXT). 16.Using $* improperly would result in a GPF. 17.The "Always get IP address on connect" wasn't working. 18.A /me now cannot be sent without a message. 19.Cleaned up several routines, removed potential GPFs & other problems. (most of which were detected while compiling the 32-bit version) 20.Double-clicking on a servername in Setup dialog is same as selecting Connect. 21.Now available in a 32-bit version (with optional air-conditioning). 22.Added /wavplay command. 23.Two bugs in Getting IP address routines were fixed. 24.Fixed unknown mode oo bug. 25.The ON OP/SERVEROP/DEOP were noticing only the first opped nick. 26.Address as returned by a /whois now has an @ sign. 27.Added $cb parameter, which refers to the first 256 characters of current clipboard contents. 28.The /flood command now inhibits only specific types of replies to the server eg. replies to Remote/events/ctcp (basically, replies triggered by other users). 29.Made random delay auto-op an option in the options dialog. 30.A user in the remote user list can now have multiple access levels: 5,=10,=15,=17:*!*@mardam.demon.co.uk 1) The first level in the list is treated normally and can be anything. 2) The remaining levels are treated as = levels (even if you dont put the = infront of them). 31.Finger window popup menu now shows the last 5 fingered addresses for quick selection. 32.Now prevents Channel list window being closed while a listing is being made. 33.The mode change checking routines have been improved. 34.Cleaned up/Improved popup menu positioning routine. 35.Added /rlevel command which removes all users with the specified access level from the remote user list. 36.Fixed problem with extra spaces being appended to sent lines. 37./omsg and /onotice can now take an optional channel argument. eg. /omsg [#channel] 38.Windows opening in mIRC are now not given focus if mIRC is not the active application. 39.Text in remote dialog is displayed more quickly now. 40./ignore now also ignores all notices. This means you can't do ctcp on any person you ignore since a reply to a ctcp is a notice. 41.Added $server, $ip, and $host as identifiers. 42.Can now define groups of commands/events in the remote: #2 start 1:ON JOIN:... 1:ON TEXT:... #2 end You can use /enable #2 or /disable #2 to enable/disable group #2. A disabled group is ignored by the remote. You cannot have groups within groups. 43.Now shows User mode in status window title. 44.The READ command in the fileserver now does paging (default of 20 lines) and prompts user whether to continue listing or to stop. User can specify optional paging size with: read [-numberoflines] 45.The READ fileserver command now also allows reading of any file. 46.Control-Home/End now moves to top/bottom of window text buffer. Control-Page Up/Down moves up/down line-by-line. 47.Can now do /help for most commands mirc knows. 48.Each window now has a 20 line command history buffer, use Cursor Up/Down in single-line editbox, or Control-Up/Down in multi-line editbox. 49.Protect-list bug fixed. 50./ruser nick! now removes any address beginning with nick! in the user list. 51.Can now handle multiple /ban and /guser commands one after the other. 52.Can now also specify *N1-N2 or $parmN1-N2. For a horrible example, see: 1:TEST:/notice $1 *1 *2-6 *9:$nick $parms $parm1 $parm1* $parm3-5 $parm4-9 53:Optimized text display routines. 54.Fixed the undernet /uwho X GPF. 55.Fixed % problem with actions. 56.Improved output of /finger
routine, now expands tabs and inserts empty lines in the correct places. 57.Fixed GPF bug in handling of KILLs. 58.Added a crude ON MODE/SERVERMODE to react to a *channel* mode change. 1!:ON MODE:#mirc:-spmi+lktn 20 mykey:/notice *1:$nick Illegal mode change! When someone changes the channel mode, mIRC enforces the above channel mode instead, and sends the user a notice. 59.Now removes redundant spaces from lines in the Options dialog. 60.Fixed disappearing popups/commands/events problem. 61.Improved /ruser command so that it can work like /ban and /guser. /ruser [type] if you do NOT specify a type, then it works as usual and removes the specified nick from the user list. If you DO specify a type, it looks up the users address and removes that address from the user list. 62.Now correctly initiates a DCC CHAT using 'chat' as opposed to the originators name. 63.Improved Channel List Window Popup menu. Added a dialog which allows you to respecify the list parameters to relist the window without having to do a relist from the server. 64.Fixed "Error sending data" at end of transfer with fast send turned on. 29/06/95 - mIRC v3.42 (minor update) Fixes/Additions: 1.Fixed Beeping saving/loading beep settings using only nickname and not the whole line in 'DCC Chat with krejt'. 2.The Local Host name can now be changed while online. 3.The /ban command did not allow processing of following commands. 4.Fixed 'Enter' bug in single-line editbox (?). 5.If "Show quits in channel" wasn't checked, user would not be removed from channel namelist when user quits. 6.Unbanning in the /channel dialog now unbans 3 users at a time in one mode command instead of one user at a time. 7.Added Options->Auto-Op random pausing (up to 7 seconds). 8.Minimized get icon now shows nickname. 9.Fixed server ports being reset to 6667. 10.Fixed the /msg =nickname GPF bug. 11.Added * to beginning of username in /ban addresses. 12.Changed /finger method slightly. 13.Added /pop [#channel] command which performs a paused op on the specified user within a random number of seconds. 14.A DCC Chat window is only given focus on connection if it is the active window, otherwise it just beeps once. 15.Can now do /help . 16.Fileserver was ignoring parameter and limited users to get only one file at a time. 17.Optimized routine for handling mode changes. 18.Fixed ON NOTICE bug. 19.Fixed /uwho (is operator) bug and /uwho ctcp bug. 20.Fileserver: if file has no extension then '.' is automatically added to user get request filename. 21.Improved voiced/opped display of nicks but still when a user is deopped and has a voice, things mess up. 22.Now automatically shortens your nicknames to the maximum length allowed by the server you connect to. 23.Fixed bug with /ban after using the /auser command. 24.Rewrite of INI reading routines in the hope of fixing GPF's and other weird problems that are being caused by this. 25.Changed timing of Misc->Options->perform commands, now sends commands right after end of MOTD. 21/06/95 - mIRC v3.3, v3.4 Fixes/Additions: 1.Fixed line splitting in single line editbox. 2./describe now displays as a normal action if you are on the channel that you are sending to. 3.Can now do 1!:ON TEXT:etc... which means this command should not react to any events caused by me. 4.Added alternative join/part/quit format option. 5.Fixed :! GPF. 6.Fixed $opnick problem. 7.Directories are now sorted in DCC Send dialog. 8.Can now specify directory for mirc.ini file on command line. 9.Notify routine now checks for a blank line! 10.Server name is now shown in status window title bar. 11.Fixed $parms not being passed on with a :> directive. 12.Added /add [-apuce] filename.ini and /save filename.ini which load in alias, popups, and remote user, command, and event sections from the specified ini file. The /save saves all of these five sections to the specified ini file. 13.Added $me as an alias parameter which refers to your nickname. 14.Added option to append text to application title bar. 15.Can use ; or REM to comment out lines in the remote/event sections. 16.Now connects even if unable to get your local host name but was still able to get your ip address (should have done this a long time ago!). 17.Added a /raw command which sends any parameters you supply directly to the server. You MUST know the correct RAW format to use this command. 18.Added /omsg and /onotice commands which send a message to all channel operators on the current channel. eg. /omsg Hello there! These are limited to users with Op status. 19.Can now specify max. number of lines in scrollback buffer. 20.Fixed bug in the /auto, /notify, /ignore, and /protect storage routines. 21.Can now minimize a window quickly by pressing the ESCape key (option). 22.Added /timer1 to /timer9 commands in the format: /timerN eg. /timer1 30 /ame is AWAY! 23.Status window can now remember minimized/maximized position. 24.DCC Chat window is now not minimized if it is initiated by you. 25.Added crude /flood control, format: /flood . Prevents mIRC from sending any lines to the server if it has sent too many lines in a specified number of seconds. These lines are NOT stored, they are lost. 26.Fixed problem with $ followed by letters not being displayed. eg. $SHELL ($ followed by a number is always assumed to be a parameter). 27.Added: +2:ON JOIN:etc... the + limits this command to only level 2 users. 28.Added Select File/Directory dialog to Add, Extras, and DCC Options dialogs. 29.Fixed weird DCC-related bug in input routine...? 30.Added ON SERVEROP event eg. 1:ON SERVEROP:#:/msg *1:$me $opnick was opped by $nick where $nick refers to the server that did the opping. 31.Added /closemsg command to close message windows with a certain nickname. 32.Fixed USER not enough parameters problems. 33.Each window now stores it's own previous line (using /). Using / brings back last line typed in current window. and /! brings back last line typed in any window. 34.Finger server now uses different method to do a finger which might solve problems some people were having. 35.Can now use either the IP address or the Hostname of an IRC server. 36.DCC Send icon now shows nickname. 37.Added option "Reconnect on disconnection". 38./help now brings up mirc.hlp file irc commands section. 39.Now removes strange characters from users name when logging. 40.Can now use $parm1* just like the $1* parameter. 41.Fixed /uwho "is operator" bug. 42.Windows can be resized to a smaller size. 43.Fixed DO problem. 44.Quit in a channel now just shows nickname and quit message. 45./join #this_is_a_test_of_brigs_bug has been fixed. But there's still a limit of how long a channel name can be! 46.Fixed buildup of %'s when recalling previous line. 47.Added -c switch to /play command to allow playing of commands. 48.If resizing window and you're at the bottom of the buffer it stays at the bottom after the resizing. 49.Fixed problem with silent disconnections (i think). 50.Quit now uses a default message of (Leaving). 51.Fixed occasional window text not being updated? 52.Added Beeping option to Chat/Channel/Query window system menus which overrides Options "Beep on Message" setting. Each window remembers it's beeping setting. 53.Added ON NOTIFY event. eg. 1:ON NOTIFY:/msg *1:$me $nick is on IRC! 54.Added /log on/off command for logging windows to file. 55.Added $+ parameter which means append the next parameter without inserting a space before it. 57.Fixed /stats problem. 58.Fixed 1:*:! problem. 59.Added /fserve for fileserver. 60.Fileserver improvements: 1) now sends 30 second timeout warning to idle user. 2) Directories are now listed horizontally in wide listing. 3) If user does ls -4 and then does ls the -4 is remembered. 4) Can do ls -[k|b] for listing in K's or bytes. 5) Greatly improved fserve routines. 6) Prevents a user having more than one fileserver session open. 7) Directories/files are now sorted. 61.Greatly improved dynamic memory allocation. 62.Made change to the ON TEXT event. The search text should now be specified in the following manner: eg. 1:ON TEXT:text:#mirc:/msg *1:etc... where text is: =text - if user said only this word text* - if user started line with this word *text - if user ended line with this word *text* or text - if user said this word anywhere 63.Added 5:ON OP:= which means that any level 5 or higher users will not get a reaction from a lower level ON OP when they are opped. Works with other events and remote definitions as well. 64.Cleaned up/optimized/rewrote many many routines. 65.Fixed GPF when window is closed while popupmenu is up. 66.Fixed "Unable to send query to server" problem(?) 67.Fixed /auser /ruser being lost if Cancel pressed in remote dialog. 68.Can now select a maximum of 9 files to send in dcc send dialog. Also added a minimize option to minimize all dcc send windows. 69.Fixed bugs in INI reading routines. 70.Added /guser [type] command which does the same thing as /auser but does a /whois on the specified nickname first and then adds their address to the remote user list. 71.Remote DCC Send window closes if other user closes connection. 72.If a DCC Get window is waiting for a resume acknowledgement and times out then the window is closed. 73.Speeded up text update in windows significantly. 74.Added /exit command which forces mIRC to closedown. 75.Now removes directory prefix from a DCC Get file. 76.Major DCC Send improvements. 77.Added /fsend [on|off] an experimental fast dcc send option. 78.Added /ulist which lists users in the remote list with specific access levels. 79.Fixed /oper command. 80.Changed /ban types (1 to 4). Also /ban with no type bans the whole address with no wildcards. Banning an IP address now adds a wildcard to the last ip number. 81.Added/Fixed other things I forgot to write down... 2/05/95 - mIRC v3.2 Fixes/Additions: 1. GPF on join to undernet fixed. 2. GPF on joining channel with too long a topic fixed. 3. Added title specification to parameter box, eg.: /j /join $?="Enter channel name:" 4. Can now use Page Up/Down keys to scroll through buffer. 5. Fixed spaced out /who result. 6. Now cannot prevent the standard ctcp version reply being given. 7. Can now build as many levels of popup menus as required. 8. Added Query/Chat popup menu. 9. Added extra double-click options. 10.Added auto-close send window option. 11.A remote send window now closes if other party crashes/cancels get. 12.Idle time wasnt working in single-line edit box. 13.Sockets weren't being closed properly. 14.Fixed problem with directory and slash. 15.added /channel command for channel central (only works in a channel). 16.Added ability to view/change topic in Channel Central. 17.Editboxes thinned down for Win95. 18.Changed dialog borders to reflect standard practise. 19.Added ... to menu items to reflect standard practise. 20.GPF on nick collision fixed?? 21.Timer now updates in the timer window when online. 22.Can now do both /ban nickname or /ban #channel nickname 23.Complete rewrite of editbox routine. Can now paste properly. 24.Added "You are Op/Not Op" to channel central window. 25.Fixed problem in win95 with title disappearing when window is minimized. 26.Fixed remote :*: responding to an action command. (oops :) 27./server with no parameters connects to the last specified server. 28.Fixed problem with | alias seperator placed after a *1 *2 etc. 29.Fixed problem with DO remote command. 30.Remote can now handle commas etc. stuck to identifiers eg. 1:WHOAMI:/notice *1:$nick You are $nick, your address is $address. 31.Added #$ parameter type. Prefixes the parameter with a #. cannot be used in a multi-command. eg #$* but can do #?1="Say what?" 32.Added $! parameter type. Refers to the last line you entered in the entry parameter window. 33.Added /amsg and /ame which do an All channel message and All channel action. 34.Last used server in the Setup window is moved to top of list. 35.If mirc.ini is not found in windows dir but found in current dir then it is automatically copied to windows dir without asking user. 36.Added "Fast Ack" in DCC Opts window for non-compliant winsocks. 37.Dialogs are now positioned a little higher in Win95 above menu bar at bottom of screen. 38.Now allows leading spaces in text to channel/query/chat windows. 39.Fixed problem with cursor not showing in editbox?? 40.Iconized Win95 windows do not flash anymore but are drawn highlighted with a red rectangle. 41.Addresses must now be standard form eg. *!*khaled@mardam.demon.co.uk 42.Can now do /dcc send ... 43.Added /beep command. 44.Fixed GPF bug with malformed DCC Send requests. 45.Added simple Event handler to remote section. 46.Other bits I can't remember... 23/04/95 - mIRC v3.1 Fixes/Additions: 1. Added /ctcp $* performs command on all parameters. 2. Remembers if main window was iconized. 3. Added "finger" popup for finger window. 4. Fixed mistake in graphics routine. Update is now faster. 5. Windows open up in a more "windows" like fashion now. 6. User listbox now lists all people on large channels. 7. Using main menus under certain setups wasn't working properly. 8. Cancel away on keypress now ONLY cancels if you say something in a channel or a query. 9. Fixed finger client so can finger VMS hosts etc. 10.Added new user warning about mirc.ini file. 11.Can now do aliases such as: /laugh /me laughs at $1's joke 12.Added timeout to chat/get confirm dialog. 13.DCC sessions now show only a nickname. 14.USER login to IRC was working but not correct. 16.Improved Editbox: Can now enter multiple lines with a paste and they will be sent correctly. 17.Fixed Auto-Op wild-card routine. 18.Fixed beeping when windows are maximized & windows don't scroll. 19.Fixed small bug in /join command, now allows key. 20.Notify now tells you if no one in your list is on IRC. 21.Added User info window as the command /uwho . 22.Internal reorganization and cleaning up. 23.PASS password to server was incorrect. 24.Added /msg =nickname for dcc chat. 25.Added /play command. 26.Added /describe command. 27.Major improvement of screen update, speed has more than doubled. 28.Added option to use windows colours. 29.DCC Send by remote is automatically minimized. 30.Now tries three different ways to get local host and ip address. 31.Red rectangle is drawn around icons of windows with pending messages. For Windows 95 the iconized window flashes instead. 32.Now changed so that can have only ONE chat session with the same user. 33.If user replies to a /dcc chat request by initiating another dcc chat then mIRC treats this as an acceptance of it's own request. 34.You can now ignore addresses as well as nicks. 35.Remote DCC's close windows automatically on finish. 36.Added DCC timeout options. 37.Added #string parameter to /list command. 38.Fixed problem with moderated channels and +nicknames. 26/03/95 - mIRC v2.8c etc... Fixes/Additions: 1. Added wild cards for auto-op. 2. If a user changes nicks while in a query to you and they are on the same channel as you, mIRC uses the nickname change notification to update the query window name so you can keep talking to the person. 3. When a query is received and it is iconized, the icon is placed above all other windows so you can see it. 4. Scroll bars have been made a standard size and moved a little bit to make them look neater. 5. ban command now has 4 levels of ban. eg. /ban where is a value 0 to 3. 6. The /server command can now take Port and Password parameters. for example, /server irc.server.co.uk 6667 password 7. Added "Use Dedicated Message Window" option. private messages go only to this window. 8. "Notices" work more intelligently now and will appear in a channel window if sent by someone on that channel. Otherwise they are sent to the status window as usual. 9. mIRC now listens for identd requests and replies using the userid part of your email address as a UNIX system. 10.Font and Window position can now be saved for the Message Window and logging/saving to proper filename now. 11.Was GPFing on a nick collision. Oops :) 12.Added channel modes to ban list routine. Much more useful now! 13.Added context-sensitive F1 help key. 14.Added new alias parameter type. $$ = parameter MUST be filled. If it is not filled, command is not executed. Before, /whois $1 was executed even if no parameter was given. Now, /whois $$1 will only be executed if you supply a parameter. 15.Can now also do $$?1 or $?1 which means, try to fill this value with parameter one if it exists. If parameter one doesnt exist, ask for it. 16.Fixed problem with copy/paste routine. MUCH faster now. 17.Fixed font problem with text not showing in Editbox when in windows screen with large font setting. 18.Added DCC Resume capability. non-standard. 19.Allows multiple select in ban list. 20.Fixed dialog positioning when in different screen modes. 21.Added option to prefix own messages with own nick. 22.Would crash if popup menu definition was incomplete. fixed. 23.Double-click in a query window does a /whois. 24.Added small popup menu to channel list window. 21/03/95 - mIRC v2.8b (not released) Fixes/Additions: 1. the % character can now be used. 2. help file had a few mistakes in it. 3. a /msg results in outgoing message being shown in the correct window. 4. added option "Beep on message while in buffer". 5. /hug /me *hugs* $1 now works. 6. allow /query etc commands in dcc chat window. 7. problems handling /msg and other commands. 8. dissallow changing nickname and alternate in setup when online. 9. log files werent being closed properly. 11.enlarged Popup menus window. 12.refined appearance of /msg /notice/ etc. commands. 13.aliases had a bug or three. 14.added [x] minimize to auto-accept chat request. 15.ctcp ping seconds working properly now. 16.query window sometimes opened up VERY small due to saving window size while it was iconized. 17.Changed query/chat windows so that only one default font is saved. 18.Changed "beeping" method to minimize number of beeps. 19.File logging was messed up. 20.Speeded up display of popupmenu definitions in popup dialog. 21.text wrapping wasn't taking notice of mid variable. 22.changed minimum window size depending on whether it is a channel or not. 23.now remembers default size for channel windows. 24.fixed problem with previous-line routine. 25.added /dcc packetsize command. All memory for DCC Send/Get sessions now allocated dynamically. 26.when a window is maximized, widths weren't set properly for any other windows beneath it. 18/03/95 - mIRC v2.7a Fixes/Additions: 1. Changed dblclk ban list routine again. 2. Variable assignment was wrong in open window routine. Caused windows to behave strangely and crash. 3. Changed query & msg commands. /msg does not open a window, /query does. 4. Added beeping on query & notice options. 5. The INI filename specified on the command line was not working for some mIRC functions. 6. DCC sessions were not being closed properly, ie. files in some cases would be left open. 7. Cosmetic changes - moved some options to extras dialog and other stuff. 8. Invite command wasn't working properly. 9. Corrected mistakes in the mirc.ini file. 10.Query window size wasn't being saved. 11.mIRC wasn't closing all DCC connections on quit. 12.Now prevents duplicate server entries in setup dialog. 13.Some windows are now more intuitively centered on opening. 14.Now shows number of channels as they are being listed. 15.Some windows were opening only in the top left corner. Window positioning is hopefully better now. 16.QUIT and AWAY commands weren't setting message properly. 17.Added /LEAVE (like /PART. command for compatibility. 18.Again changed optimization switches in compiler. Previous settings caused more problems than I thought... 19.Can now open mutiple DCC Chat sessions with the same person. 20.Option to show Quits in channel window. 21.now shows /msgs that you send. 22.when doing a "reset position" window is placed neatly inside main window even if saved position was outside it. 23.Changed /protect etc. to work using on and off. 34.Added option to highlight own messages. 25.Aliases with a * in them weren't working properly. 26.About dialog now disappears on keypress. 27.Can now continue DCC chats if disconnected from IRC. 28.After disconnection, on reconnect to IRC, only channel windows are closed. All other windows remain open. 29./SERVER command now works. (can use in popup menus!) 30.Bugs in file handling routines. 31.Bug in Channels list routine. 32.Iconify query window option. 33.beeps if message in channel and you are not at bottom of buffer. 34.Added whois option on a query. 35.If talking in query window and person logs off IRC, informs you nick is invalid *in* query window. 36.when not at bottom of buffer and a channel message is printed, highlighting for copy/paste now stays on. 37.Enlarged alias window. 38.Alias window now shows number of aliases entered. Possible Bugs/Annoyances: 1. Text in window sometimes goes blank or isn't updated properly. 2. Text sometimes prints over the scrollbar slightly. 3. Multiple DCC sends/gets might not work properly. 13/03/95 - mIRC v2.6b (a dud version - was unstable) Fixes/Additions: 1. Finger routine wasn't being cancelled properly. 2. Now allows user to enter their own IP address. 3. Certain windows would beep on closing (definitely fixed now!) 4. Routine for printing text in window majorly optimized and cleaned up. 5. Listbox popup menu would popup even if a user wasn't selected. 6. Cleaned up the retrieve ban list routine. 7. Winsock startup routine wasn't being initialized properly. 8. Copy/Paste routine has changed. No longer need to press the shift key. 9. QUIT wasn't appending quit message. 10.Child windows were being positioned outside main window. 11.Spotted and fixed oh so sneaky bug in word wrap routine. 12.DCC Send/Get Directories default to same directory as mirc.exe. 13.Can now specify directory for logs and buffer saves. 14.Mode change with multiple settings wasn't working. 15.Can now specify on the command line the name of the .ini file to use. Default name is "mirc.ini". This means you can have different .ini files for different nets. 16.Added /! command, recalls previous command. 17.Cleaned up the help file, made IRC commands section readable. 18.Now compiling with different optimization switches. This automatically fixed around 5 "bugs" !!! 08/03/95 - mIRC v2.5a Fixes/Additions: 1. added "always retrieve local host" option for people who have dynamic IP addresses! 2. channel mode in title is permanently on. not an option anymore. 3. Added ctcp USERINFO command for compatibility. However, it returns the same information as a ctcp finger command. 4. moved some options to different windows were they made more sense. 5. added /finger and /auto commands. 6. fixed problem with releasing memory... popup menus weren't being freed properly so mIRC would lose as much memory as the size of the popup menus defined by the user. With the mirc.ini that comes with the program, this turned out to be 3k+ of system resources everytime the program is run. 7. the MODE for channel mode changes gets messy when lots of mode changes occur. cleaned it up. 8. Window names in Window menu would not switch to the correct window when selected. 9. Text buffers for windows were not being freed properly. 10.Can now set the default font for the status/finger/list windows from their system menu. Only the DCC Send/Get windows have to be set from the font dialog window. 11.added auto-log option for channels and query/dcc chat. 12.Commands such as /finger and /run can now be used off-line. 13.Corrected some mistakes in the mirc.ini file. 05/03/95 - mIRC v2.4a Fixes/Additions: 1. major update of window handling - made more robust. 2. notify would keep notifying even if it was still waiting for previous notify to be returned by server. 3. popup menu positioning was incorrect in some situations. 02/03/95 - mIRC v2.3a Fixes/Additions: 1. dcc get received file okay but closed connection too early. 2. dcc send/get/chat were re-initiating arrays too early, didn't cause problems but made the program beep everytime you closed a window because the array was empty. 3. some debug information was being printed! Arrrrgh! forgot to turn off the debug switch in the first release :. 4. updated help file with description of previously coded but forgotten items. 5. In dcc get, if sender client did not specify size of file (which it should!. then mIRC said the size was zero bytes. Now it just says [unknown]. 6. highlighting now works properly. 7. ".." previous directory wasnt showing up in dcc send dialog. 8. the channel listbox wasnt adding/removing nicks properly. 9. double-click for ban list. clicking twice only in the SAME place now brings ban list up. 10. added option to display file size instead of percent complete in DCC send/get transfers. 11.fixed timer display: wasnt displaying timer after nick change. 12.adds "/nick " to editbox if both nicks collide on login. 13.dcc send/get had problems with packet size. fixed. 14.other cosmetic changes. 28/02/95 - mIRC v2.1a First public release.