diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..0a1cb56 --- /dev/null +++ b/.gitignore @@ -0,0 +1,7 @@ +*.mk1 +*.lk1 +*.res +*.map +*.obj +*.exe +*.mk diff --git a/docs/build.txt b/docs/build.txt new file mode 100644 index 0000000..89f9403 --- /dev/null +++ b/docs/build.txt @@ -0,0 +1,31 @@ +WINAMP CONTROL CENTRE +Version 1.4.2 + +Building Winamp Control Centre +============================== + +Winamp Control Centre was originally developed with Watcom C/C++, which now +lives on as an open source product, Open Watcom. Open Watcom's home page is +http://www.openwatcom.org/, but as of June 2015 that site appears to be down. +However, an active fork of Open Watcom is available here: + +https://github.com/open-watcom/open-watcom-v2 + +This includes lots of new features, including a 64-bit Windows hosted version +of Watcom. + +To build Winamp Control Centre, simply open the src\winampcc.wpj project in +the Watcom IDE and choose Actions -> Make All. + +If you prefer to use another compiler to build WinampCC, you should find it +compiles without much trouble. The source code for the 32-bit application, +WinampCC.exe, is contained within the src\win32 directory, and should build +on any standard Win32 C compiler. Microsoft Visual C++ has been tested +recently with success, although I have not include a project or makefile for +it. Feel free to contribute build scripts or project files to the WinampCC +GitHub project if desired. + +The 16-bit version, if anybody is still interested in it, should again build +with any competent compiler - I believe I compiled it with Borland C++ 4.51 +some years ago. I expect 16-bit versions of Visual C++ or its predecessors +should also be able to build it. diff --git a/docs/licence.txt b/docs/licence.txt new file mode 100644 index 0000000..d159169 --- /dev/null +++ b/docs/licence.txt @@ -0,0 +1,339 @@ + GNU GENERAL PUBLIC LICENSE + Version 2, June 1991 + + Copyright (C) 1989, 1991 Free Software Foundation, Inc., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + Everyone is permitted to copy and distribute verbatim copies + of this license document, but changing it is not allowed. + + Preamble + + The licenses for most software are designed to take away your +freedom to share and change it. By contrast, the GNU General Public +License is intended to guarantee your freedom to share and change free +software--to make sure the software is free for all its users. This +General Public License applies to most of the Free Software +Foundation's software and to any other program whose authors commit to +using it. (Some other Free Software Foundation software is covered by +the GNU Lesser General Public License instead.) You can apply it to +your programs, too. + + When we speak of free software, we are referring to freedom, not +price. Our General Public Licenses are designed to make sure that you +have the freedom to distribute copies of free software (and charge for +this service if you wish), that you receive source code or can get it +if you want it, that you can change the software or use pieces of it +in new free programs; and that you know you can do these things. + + To protect your rights, we need to make restrictions that forbid +anyone to deny you these rights or to ask you to surrender the rights. +These restrictions translate to certain responsibilities for you if you +distribute copies of the software, or if you modify it. + + For example, if you distribute copies of such a program, whether +gratis or for a fee, you must give the recipients all the rights that +you have. You must make sure that they, too, receive or can get the +source code. And you must show them these terms so they know their +rights. + + We protect your rights with two steps: (1) copyright the software, and +(2) offer you this license which gives you legal permission to copy, +distribute and/or modify the software. + + Also, for each author's protection and ours, we want to make certain +that everyone understands that there is no warranty for this free +software. If the software is modified by someone else and passed on, we +want its recipients to know that what they have is not the original, so +that any problems introduced by others will not reflect on the original +authors' reputations. + + Finally, any free program is threatened constantly by software +patents. We wish to avoid the danger that redistributors of a free +program will individually obtain patent licenses, in effect making the +program proprietary. To prevent this, we have made it clear that any +patent must be licensed for everyone's free use or not licensed at all. + + The precise terms and conditions for copying, distribution and +modification follow. + + GNU GENERAL PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. This License applies to any program or other work which contains +a notice placed by the copyright holder saying it may be distributed +under the terms of this General Public License. The "Program", below, +refers to any such program or work, and a "work based on the Program" +means either the Program or any derivative work under copyright law: +that is to say, a work containing the Program or a portion of it, +either verbatim or with modifications and/or translated into another +language. (Hereinafter, translation is included without limitation in +the term "modification".) Each licensee is addressed as "you". + +Activities other than copying, distribution and modification are not +covered by this License; they are outside its scope. The act of +running the Program is not restricted, and the output from the Program +is covered only if its contents constitute a work based on the +Program (independent of having been made by running the Program). +Whether that is true depends on what the Program does. + + 1. You may copy and distribute verbatim copies of the Program's +source code as you receive it, in any medium, provided that you +conspicuously and appropriately publish on each copy an appropriate +copyright notice and disclaimer of warranty; keep intact all the +notices that refer to this License and to the absence of any warranty; +and give any other recipients of the Program a copy of this License +along with the Program. + +You may charge a fee for the physical act of transferring a copy, and +you may at your option offer warranty protection in exchange for a fee. + + 2. You may modify your copy or copies of the Program or any portion +of it, thus forming a work based on the Program, and copy and +distribute such modifications or work under the terms of Section 1 +above, provided that you also meet all of these conditions: + + a) You must cause the modified files to carry prominent notices + stating that you changed the files and the date of any change. + + b) You must cause any work that you distribute or publish, that in + whole or in part contains or is derived from the Program or any + part thereof, to be licensed as a whole at no charge to all third + parties under the terms of this License. + + c) If the modified program normally reads commands interactively + when run, you must cause it, when started running for such + interactive use in the most ordinary way, to print or display an + announcement including an appropriate copyright notice and a + notice that there is no warranty (or else, saying that you provide + a warranty) and that users may redistribute the program under + these conditions, and telling the user how to view a copy of this + License. (Exception: if the Program itself is interactive but + does not normally print such an announcement, your work based on + the Program is not required to print an announcement.) + +These requirements apply to the modified work as a whole. If +identifiable sections of that work are not derived from the Program, +and can be reasonably considered independent and separate works in +themselves, then this License, and its terms, do not apply to those +sections when you distribute them as separate works. But when you +distribute the same sections as part of a whole which is a work based +on the Program, the distribution of the whole must be on the terms of +this License, whose permissions for other licensees extend to the +entire whole, and thus to each and every part regardless of who wrote it. + +Thus, it is not the intent of this section to claim rights or contest +your rights to work written entirely by you; rather, the intent is to +exercise the right to control the distribution of derivative or +collective works based on the Program. + +In addition, mere aggregation of another work not based on the Program +with the Program (or with a work based on the Program) on a volume of +a storage or distribution medium does not bring the other work under +the scope of this License. + + 3. You may copy and distribute the Program (or a work based on it, +under Section 2) in object code or executable form under the terms of +Sections 1 and 2 above provided that you also do one of the following: + + a) Accompany it with the complete corresponding machine-readable + source code, which must be distributed under the terms of Sections + 1 and 2 above on a medium customarily used for software interchange; or, + + b) Accompany it with a written offer, valid for at least three + years, to give any third party, for a charge no more than your + cost of physically performing source distribution, a complete + machine-readable copy of the corresponding source code, to be + distributed under the terms of Sections 1 and 2 above on a medium + customarily used for software interchange; or, + + c) Accompany it with the information you received as to the offer + to distribute corresponding source code. (This alternative is + allowed only for noncommercial distribution and only if you + received the program in object code or executable form with such + an offer, in accord with Subsection b above.) + +The source code for a work means the preferred form of the work for +making modifications to it. For an executable work, complete source +code means all the source code for all modules it contains, plus any +associated interface definition files, plus the scripts used to +control compilation and installation of the executable. However, as a +special exception, the source code distributed need not include +anything that is normally distributed (in either source or binary +form) with the major components (compiler, kernel, and so on) of the +operating system on which the executable runs, unless that component +itself accompanies the executable. + +If distribution of executable or object code is made by offering +access to copy from a designated place, then offering equivalent +access to copy the source code from the same place counts as +distribution of the source code, even though third parties are not +compelled to copy the source along with the object code. + + 4. You may not copy, modify, sublicense, or distribute the Program +except as expressly provided under this License. Any attempt +otherwise to copy, modify, sublicense or distribute the Program is +void, and will automatically terminate your rights under this License. +However, parties who have received copies, or rights, from you under +this License will not have their licenses terminated so long as such +parties remain in full compliance. + + 5. You are not required to accept this License, since you have not +signed it. However, nothing else grants you permission to modify or +distribute the Program or its derivative works. These actions are +prohibited by law if you do not accept this License. Therefore, by +modifying or distributing the Program (or any work based on the +Program), you indicate your acceptance of this License to do so, and +all its terms and conditions for copying, distributing or modifying +the Program or works based on it. + + 6. Each time you redistribute the Program (or any work based on the +Program), the recipient automatically receives a license from the +original licensor to copy, distribute or modify the Program subject to +these terms and conditions. You may not impose any further +restrictions on the recipients' exercise of the rights granted herein. +You are not responsible for enforcing compliance by third parties to +this License. + + 7. If, as a consequence of a court judgment or allegation of patent +infringement or for any other reason (not limited to patent issues), +conditions are imposed on you (whether by court order, agreement or +otherwise) that contradict the conditions of this License, they do not +excuse you from the conditions of this License. If you cannot +distribute so as to satisfy simultaneously your obligations under this +License and any other pertinent obligations, then as a consequence you +may not distribute the Program at all. For example, if a patent +license would not permit royalty-free redistribution of the Program by +all those who receive copies directly or indirectly through you, then +the only way you could satisfy both it and this License would be to +refrain entirely from distribution of the Program. + +If any portion of this section is held invalid or unenforceable under +any particular circumstance, the balance of the section is intended to +apply and the section as a whole is intended to apply in other +circumstances. + +It is not the purpose of this section to induce you to infringe any +patents or other property right claims or to contest validity of any +such claims; this section has the sole purpose of protecting the +integrity of the free software distribution system, which is +implemented by public license practices. Many people have made +generous contributions to the wide range of software distributed +through that system in reliance on consistent application of that +system; it is up to the author/donor to decide if he or she is willing +to distribute software through any other system and a licensee cannot +impose that choice. + +This section is intended to make thoroughly clear what is believed to +be a consequence of the rest of this License. + + 8. If the distribution and/or use of the Program is restricted in +certain countries either by patents or by copyrighted interfaces, the +original copyright holder who places the Program under this License +may add an explicit geographical distribution limitation excluding +those countries, so that distribution is permitted only in or among +countries not thus excluded. In such case, this License incorporates +the limitation as if written in the body of this License. + + 9. The Free Software Foundation may publish revised and/or new versions +of the General Public License from time to time. Such new versions will +be similar in spirit to the present version, but may differ in detail to +address new problems or concerns. + +Each version is given a distinguishing version number. If the Program +specifies a version number of this License which applies to it and "any +later version", you have the option of following the terms and conditions +either of that version or of any later version published by the Free +Software Foundation. If the Program does not specify a version number of +this License, you may choose any version ever published by the Free Software +Foundation. + + 10. If you wish to incorporate parts of the Program into other free +programs whose distribution conditions are different, write to the author +to ask for permission. For software which is copyrighted by the Free +Software Foundation, write to the Free Software Foundation; we sometimes +make exceptions for this. Our decision will be guided by the two goals +of preserving the free status of all derivatives of our free software and +of promoting the sharing and reuse of software generally. + + NO WARRANTY + + 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY +FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN +OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES +PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED +OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF +MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS +TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE +PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, +REPAIR OR CORRECTION. + + 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING +WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR +REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, +INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING +OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED +TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY +YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER +PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE +POSSIBILITY OF SUCH DAMAGES. + + END OF TERMS AND CONDITIONS + + How to Apply These Terms to Your New Programs + + If you develop a new program, and you want it to be of the greatest +possible use to the public, the best way to achieve this is to make it +free software which everyone can redistribute and change under these terms. + + To do so, attach the following notices to the program. It is safest +to attach them to the start of each source file to most effectively +convey the exclusion of warranty; and each file should have at least +the "copyright" line and a pointer to where the full notice is found. + + + Copyright (C) + + 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., + 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +Also add information on how to contact you by electronic and paper mail. + +If the program is interactive, make it output a short notice like this +when it starts in an interactive mode: + + Gnomovision version 69, Copyright (C) year name of author + Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. + This is free software, and you are welcome to redistribute it + under certain conditions; type `show c' for details. + +The hypothetical commands `show w' and `show c' should show the appropriate +parts of the General Public License. Of course, the commands you use may +be called something other than `show w' and `show c'; they could even be +mouse-clicks or menu items--whatever suits your program. + +You should also get your employer (if you work as a programmer) or your +school, if any, to sign a "copyright disclaimer" for the program, if +necessary. Here is a sample; alter the names: + + Yoyodyne, Inc., hereby disclaims all copyright interest in the program + `Gnomovision' (which makes passes at compilers) written by James Hacker. + + , 1 April 1989 + Ty Coon, President of Vice + +This General Public License does not permit incorporating your program into +proprietary programs. If your program is a subroutine library, you may +consider it more useful to permit linking proprietary applications with the +library. If this is what you want to do, use the GNU Lesser General +Public License instead of this License. diff --git a/docs/readme.txt b/docs/readme.txt new file mode 100644 index 0000000..e423269 --- /dev/null +++ b/docs/readme.txt @@ -0,0 +1,288 @@ +WINAMP CONTROL CENTRE +Version 1.4.2 + +Copyright � Owen Rudge 2001-2015 +================================ + +Thank you for downloading my Winamp Control Centre. This consists +of a collection of very small programs that you can use to control +Winamp with in a variety of scenarios. Please note that Winamp +Control Centre will only work with Winamp 2.x and 5.x (and possibly 1.x) +- it will not work with Winamp3. + +The following files are included: + +readme.txt You're reading it now. +winampcc.exe Main executable, which can control Winamp in almost + any desirable way, by specifying settings in + and is extendable. +winampcc.ini INI file for winampcc.exe + +"winampcc.exe" is the preferred executable to use, and is described in the +"Using winampcc.exe" section below. + +The following legacy applications are also included. These are all 16-bit +applications and are only useful for Windows 95/98/Me, where they arguably +execute faster than winampcc.exe: + +wa_hide.exe Run this program to hide Winamp. +wa_next.exe Run this program to play the next track. +wa_pause.exe Run this program to pause/unpause Winamp. +wa_play.exe Run this program to start/restart playing. +wa_prev.exe Run this program to play the previous track. +wa_show.exe Run this program to show Winamp. +wa_stop.exe Run this program to stop playing. + +These applications will be slower on Windows 2000 or later, and will not run +at all on 64-bit versions of Windows. + +USING WINAMPCC.EXE +================== + +If you just run "winampcc" on its own, nothing will happen (assuming +you have Winamp running - if it's not running, you'll receive an +error message). To make it do something, you need to use command-line +arguments. + +The following command-line arguments are available by default: + +/SHOW Shows Winamp +/HIDE Hides Winamp +/PLAY Starts/restarts playing +/PAUSE Pauses/unpauses Winamp +/STOP Stops playing +/NEXT Plays the next track +/PREV Plays the previous track +/FLIPSHOW Show Winamp if it's hidden, hide it if it's visible +/TOFRONT Brings Winamp to the front of the screen + +However, WinampCC is customisable, in that you can add new actions. +This is what winampcc.ini is for. If you look at it, you'll see the +following (by default): + + ; Winamp Control Centre 1.4.2 + ; Configuration File + ; + ; See README.TXT for more information + ; + ; Overview of this file + ; --------------------- + ; + ; [...] + ; + ; Please see README.TXT for information on the [Commands] section of this file. + + [Configuration] + Class=Winamp v1.x + Path=C:\Program Files\Winamp\Winamp.exe + Autoload=1 + WaitLength=150 + HideOnLoad=1 + PathOnCmdLine=1 + + [Commands] + PLAY=40045 + PAUSE=40046 + STOP=40047 + NEXT=40048 + PREV=40044 + ...etc... + +If you run "winampcc pause" (without the quotation marks), you will +find that the music is paused/unpaused. Try commenting out the +PAUSE=40046 line (place a ';' before it) and save the file. Then +type "winampcc pause". It won't do anything. This is a custom +action. As an aside, WinampCC is case-insensitive, so "PAUSE", "pause" +and "PaUsE" would all be valid. + +Note also that the /PLAY, /PAUSE, etc, commands listed above are +built in, and will work even if no winampcc.ini is present or if all +commands are deleted from the INI file. + +With Winamp Control Centre 1.4, you can specify multiple commands at once, +with a limit of 63 arguments. For instance: + + winampcc /next /next /next /play /forward_5secs + +will forward 3 places in the playlist, and start playing 5 seconds into +the song. + +How does 40046 refer to Pause? Well, each button Winamp has has an +internal ID which Windows sends to Winamp when you click it. 40046 +is the ID for Pause. Try adding the following line to the file: + +/MAKE-SOME-MUSIC=40045 + +Then run "winampcc /make-some-music". Winamp will (re-)start playing. +A list of extra IDs is included in winampcc.ini at the bottom. For +the full list of IDs, see the Nullsoft Developer Network at +http://dev.winamp.com/. + +Adding a Default Action +----------------------- + +If you want something to happen when you run "winampcc" without any +command-line parameters, add a line like: + +=40046 + +to winampcc.ini. If you enter nothing on the command line, the music +will pause. + +THE CONFIGURATION SECTION OF WINAMPCC.INI +========================================= + +The [Configuration] section of winampcc.ini was new in Winamp Control +Centre 1.2. It is optional, and lets you control several enhanced +features that are new in this release. + +Class +----- + +This is the window class of the Winamp window. Usually "Winamp v1.x", +but this can be set via Winamp command line parameters - if you run +multiple instances of Winamp with different window classes, you can use +this to alter which instance to control. + +Path +---- + +Path to Winamp. Required if Autoload is set to 1, unless PathOnCmdLine is +set to 1. + +Autoload +-------- + +If set to 1, Winamp automatically loads when you call Winamp Control +Centre. + +WaitLength +---------- + +The length of time to wait, in milliseconds, between starting Winamp and +sending a command. Slower computers will require a longer wait. If you +set this value too low, Winamp may load but the command you asked for may +not be picked up by Winamp. + +HideOnLoad +---------- + +If set to 1, Winamp will be hidden after it loads. + +PathOnCmdLine +------------- + +If set to 1, Winamp Control Centre will look for the path to Winamp as the +first command line argument, and will ignore the Path configuration option +completely. The path must be enclosed in quotation marks if it contains +spaces. For example: + + winampcc "C:\Program Files\Winamp\Winamp.exe" /play + +is valid, but: + + winampcc C:\Program Files\Winamp\Winamp.exe /play + +will not work at all. + +CREATING A WINAMP TOOLBAR +========================= + +On all versions of Windows since Windows 98 (or 95/NT 4.0 with IE4), +you can create a toolbar in the task bar which controls Winamp. To do +this: + +1. Create a folder somewhere and name it "Winamp". + +2. Create a shortcut to "winampcc.exe /play" in here and name it "Play". + You can use the "Change Icon" option to select a Play icon from the + winampcc.exe program. + +3. Repeat step 2 for "/stop", "/pause", "/prev" and "/next" command + line arguments. (If you're still running Windows 95/98/Me, you may + prefer to use the wa_play.exe, etc, executables). + +4. Right-click on the taskbar, point to Toolbars and choose New + Toolbar... + +5. Browse to the folder you created and click OK. + +6. You should now have a Winamp toolbar in your taskbar. By default, + you have a "Winamp" title and a caption for each button. To save + space, you can turn these off by right-clicking an empty space on + the Winamp toolbar or right-clicking the little "movable band" (if + "Lock Taskbar" isn't enabled) and unchecking "Show Text" and + "Show Title". + +7. Launch Winamp (if you have not enabled Autoload in winampcc.ini) and + click the Play button in the taskbar. Your music should start playing. + Test the other buttons, and enjoy! + +LICENCE +======= + +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., +51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + +VERSION HISTORY +=============== + +Version 1.4.2 does not contain any new functionality, but marks the open +source release of Winamp Control Centre under the GNU General Public License. +The source code for Winamp Control Centre can be downloaded from +www.owenrudge.net/utils/winampcc, and if you wish to offer modifications, +suggestions or new features for the application, you can do so on the +GitHub site linked from the above page. + +Additionally, the "previous" and "next" icons have been increased to 4-bit +colour depth (previously 1-bit) because the 1-bit icons seemed to cause issues +on Windows XP or later (randomly being replaced with other icons in Explorer or +the taskbar). + +New in version 1.4.1 is a switch, /TOFRONT, which brings the Winamp window to the +front of the screen - useful if you want to open a Winamp window, but Winamp +is hidden behind another program. + +New in version 1.4 was support for specifying the path to Winamp on the +command line. Winamp Control Centre can now also process multiple commands at +once. See below for details. + +New in version 1.3 was an option, /FLIPSHOW, to show Winamp if it's hidden, +or hide it if it's currently shown. I have also included more switches by +default in the WINAMPCC.INI, as well as the NSDN API reference (see +below). + +New in version 1.2 were several enhancements to WINAMPCC.EXE. You can +now have Winamp automatically load when you run WINAMPCC.EXE, and it +can be automatically hidden at load too. + +New in version 1.1 was WINAMPCC.EXE. This is a 32-bit program that +lets you do everything the 16-bit programs could do, and more. It +will also be faster on Windows NT/2000/XP. + +If you have any problems, comments or queries about this software, e-mail +me - contact details are available at www.owenrudge.net/contact. + +Owen Rudge, 10th June 2015 +http://www.owenrudge.net/ + +---------------------------------------------------------------------------------- +This software was built listening to Winamp. It was compiled using Open Watcom +C/C++, which generates very small code. For information on the Winamp API, +please visit http://dev.winamp.com/. + +These programs will run under Windows 3.1 or higher, although it's unlikely you'll +have Winamp itself running on any version of Windows before Windows 95 or NT +3.51. :) +---------------------------------------------------------------------------------- diff --git a/src/icons/next.ico b/src/icons/next.ico new file mode 100644 index 0000000..3e6737b Binary files /dev/null and b/src/icons/next.ico differ diff --git a/src/icons/pause.ico b/src/icons/pause.ico new file mode 100644 index 0000000..8a9eeab Binary files /dev/null and b/src/icons/pause.ico differ diff --git a/src/icons/play.ico b/src/icons/play.ico new file mode 100644 index 0000000..6721658 Binary files /dev/null and b/src/icons/play.ico differ diff --git a/src/icons/prev.ico b/src/icons/prev.ico new file mode 100644 index 0000000..9325df0 Binary files /dev/null and b/src/icons/prev.ico differ diff --git a/src/icons/stop.ico b/src/icons/stop.ico new file mode 100644 index 0000000..7126213 Binary files /dev/null and b/src/icons/stop.ico differ diff --git a/src/win16/common.h b/src/win16/common.h new file mode 100644 index 0000000..12322f0 --- /dev/null +++ b/src/win16/common.h @@ -0,0 +1,43 @@ +/*************************************************/ +/* WinAmp Control Centre */ +/* Version 1.4.2 */ +/* */ +/* Copyright (c) Owen Rudge 2001-2015 */ +/*************************************************/ + +/* + * 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., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#include + +int PASCAL WinMain(HINSTANCE hCurInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) +{ + HWND hwndWinamp; + + hwndWinamp = FindWindow("Winamp v1.x", NULL); + + if (hwndWinamp == NULL) + { + MessageBox(NULL, "Winamp is not running.", "Winamp Control Centre", MB_OK); + return(0); + } + else + { + SendMessage(hwndWinamp, WM_COMMAND, COMMAND_TO_EXECUTE, NULL); + } + + return(0); +} diff --git a/src/win16/common.rc b/src/win16/common.rc new file mode 100644 index 0000000..adc2175 --- /dev/null +++ b/src/win16/common.rc @@ -0,0 +1,54 @@ +/*************************************************/ +/* WinAmp Control Centre */ +/* Version 1.4.2 */ +/* */ +/* Copyright (c) Owen Rudge 2001-2015 */ +/*************************************************/ + +/* + * 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., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#include + +1 VERSIONINFO +FILEVERSION 1, 4, 2, 0 +PRODUCTVERSION 1, 4, 2, 0 +FILEOS VOS__WINDOWS16 +FILETYPE VFT_APP +{ + BLOCK "StringFileInfo" + { + BLOCK "040904E4" + { + VALUE "CompanyName", "Owen Rudge\000\000" + VALUE "FileDescription", "Winamp Control Centre\000" + VALUE "FileVersion", "1.4.2\000\000" + VALUE "InternalName", INTERNALNAME + VALUE "LegalCopyright", "Copyright � Owen Rudge 2001-2015. All Rights Reserved.\000\000" + VALUE "OriginalFilename", ORIGINALFILENAME + VALUE "ProductName", "Winamp Control Centre\000" + VALUE "ProductVersion", "1.4.2\000\000" + } + + } + + BLOCK "VarFileInfo" + { + VALUE "Translation", 0x0809, 1252 + } + +} + diff --git a/src/win16/wa_hide.c b/src/win16/wa_hide.c new file mode 100644 index 0000000..e57efe6 --- /dev/null +++ b/src/win16/wa_hide.c @@ -0,0 +1,44 @@ +/*************************************************/ +/* WinAmp Control Centre */ +/* Version 1.4.2 */ +/* */ +/* Copyright (c) Owen Rudge 2001-2015 */ +/*************************************************/ + +/* + * 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., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#include + +int PASCAL WinMain(HINSTANCE hCurInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) +{ + HWND hwndWinamp; + + hwndWinamp = FindWindow("Winamp v1.x", NULL); + + if (hwndWinamp == NULL) + { + MessageBox(NULL, "Winamp is not running.", "Winamp Control Centre", MB_OK); + return(0); + } + else + { + ShowWindow(hwndWinamp, SW_MINIMIZE); + ShowWindow(hwndWinamp, SW_HIDE); + } + + return(0); +} diff --git a/src/win16/wa_hide.rc b/src/win16/wa_hide.rc new file mode 100644 index 0000000..041a1f6 --- /dev/null +++ b/src/win16/wa_hide.rc @@ -0,0 +1,4 @@ +#define INTERNALNAME "wa_hide\000" +#define ORIGINALFILENAME "wa_hide.exe\000" + +#include "common.rc" \ No newline at end of file diff --git a/src/win16/wa_hide.tgt b/src/win16/wa_hide.tgt new file mode 100644 index 0000000..b78dba2 --- /dev/null +++ b/src/win16/wa_hide.tgt @@ -0,0 +1,182 @@ +40 +targetIdent +0 +MProject +1 +MComponent +0 +2 +WString +4 +WEXE +3 +WString +5 +w_6en +1 +0 +0 +4 +MCommand +0 +5 +MCommand +0 +6 +MItem +11 +wa_hide.exe +7 +WString +4 +WEXE +8 +WVList +4 +9 +MRState +10 +WString +7 +WINLINK +11 +WString +25 +?????No debug information +1 +1 +12 +MRState +13 +WString +7 +WINLINK +14 +WString +14 +?????Debug all +1 +0 +15 +MVState +16 +WString +7 +WINLINK +17 +WString +31 +w????Version (Major.minor.rev): +0 +18 +WString +3 +3.1 +0 +19 +MVState +20 +WString +7 +WINLINK +21 +WString +17 +w????Description: +0 +22 +WString +21 +Winamp Control Centre +0 +23 +WVList +1 +24 +ActionStates +25 +WString +5 +&Make +26 +WVList +0 +-1 +1 +1 +0 +27 +WPickList +4 +28 +MItem +3 +*.c +29 +WString +4 +COBJ +30 +WVList +0 +31 +WVList +0 +-1 +1 +1 +0 +32 +MItem +9 +wa_hide.c +33 +WString +4 +COBJ +34 +WVList +0 +35 +WVList +0 +28 +1 +1 +0 +36 +MItem +4 +*.rc +37 +WString +5 +WRESC +38 +WVList +0 +39 +WVList +0 +-1 +1 +1 +0 +40 +MItem +10 +wa_hide.rc +41 +WString +5 +WRESC +42 +WVList +0 +43 +WVList +0 +36 +1 +1 +0 diff --git a/src/win16/wa_next.c b/src/win16/wa_next.c new file mode 100644 index 0000000..e98166b --- /dev/null +++ b/src/win16/wa_next.c @@ -0,0 +1,25 @@ +/*************************************************/ +/* WinAmp Control Centre */ +/* Version 1.4.2 */ +/* */ +/* Copyright (c) Owen Rudge 2001-2015 */ +/*************************************************/ + +/* + * 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., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#define COMMAND_TO_EXECUTE 40048 +#include "common.h" diff --git a/src/win16/wa_next.rc b/src/win16/wa_next.rc new file mode 100644 index 0000000..8d56655 --- /dev/null +++ b/src/win16/wa_next.rc @@ -0,0 +1,6 @@ +1 ICON "../icons/next.ico" + +#define INTERNALNAME "wa_next\000" +#define ORIGINALFILENAME "wa_next.exe\000" + +#include "common.rc" \ No newline at end of file diff --git a/src/win16/wa_next.tgt b/src/win16/wa_next.tgt new file mode 100644 index 0000000..438461a --- /dev/null +++ b/src/win16/wa_next.tgt @@ -0,0 +1,233 @@ +40 +targetIdent +0 +MProject +1 +MComponent +0 +2 +WString +4 +WEXE +3 +WString +5 +w_6en +1 +0 +0 +4 +MCommand +0 +5 +MCommand +0 +6 +MItem +11 +wa_next.exe +7 +WString +4 +WEXE +8 +WVList +4 +9 +MRState +10 +WString +7 +WINLINK +11 +WString +25 +?????No debug information +1 +1 +12 +MRState +13 +WString +7 +WINLINK +14 +WString +14 +?????Debug all +1 +0 +15 +MVState +16 +WString +7 +WINLINK +17 +WString +31 +w????Version (Major.minor.rev): +0 +18 +WString +3 +3.1 +0 +19 +MVState +20 +WString +7 +WINLINK +21 +WString +17 +w????Description: +0 +22 +WString +21 +Winamp Control Centre +0 +23 +WVList +0 +-1 +1 +1 +0 +24 +WPickList +6 +25 +MItem +3 +*.c +26 +WString +4 +COBJ +27 +WVList +2 +28 +MRState +29 +WString +3 +WCC +30 +WString +29 +?????No debugging information +1 +1 +31 +MRState +32 +WString +3 +WCC +33 +WString +24 +?????Full debugging info +1 +0 +34 +WVList +0 +-1 +1 +1 +0 +35 +MItem +9 +wa_next.c +36 +WString +4 +COBJ +37 +WVList +0 +38 +WVList +0 +25 +1 +1 +0 +39 +MItem +3 +*.h +40 +WString +3 +NIL +41 +WVList +0 +42 +WVList +0 +-1 +1 +1 +0 +43 +MItem +8 +common.h +44 +WString +3 +NIL +45 +WVList +0 +46 +WVList +0 +39 +1 +1 +0 +47 +MItem +4 +*.rc +48 +WString +5 +WRESC +49 +WVList +0 +50 +WVList +0 +-1 +1 +1 +0 +51 +MItem +10 +wa_next.rc +52 +WString +5 +WRESC +53 +WVList +0 +54 +WVList +0 +47 +1 +1 +0 diff --git a/src/win16/wa_pause.c b/src/win16/wa_pause.c new file mode 100644 index 0000000..3e47ac3 --- /dev/null +++ b/src/win16/wa_pause.c @@ -0,0 +1,25 @@ +/*************************************************/ +/* WinAmp Control Centre */ +/* Version 1.4.2 */ +/* */ +/* Copyright (c) Owen Rudge 2001-2015 */ +/*************************************************/ + +/* + * 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., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#define COMMAND_TO_EXECUTE 40046 +#include "common.h" diff --git a/src/win16/wa_pause.rc b/src/win16/wa_pause.rc new file mode 100644 index 0000000..4b776c6 --- /dev/null +++ b/src/win16/wa_pause.rc @@ -0,0 +1,6 @@ +1 ICON "../icons/pause.ico" + +#define INTERNALNAME "wa_pause\000" +#define ORIGINALFILENAME "wa_pause.exe\000" + +#include "common.rc" diff --git a/src/win16/wa_pause.tgt b/src/win16/wa_pause.tgt new file mode 100644 index 0000000..07667ec --- /dev/null +++ b/src/win16/wa_pause.tgt @@ -0,0 +1,233 @@ +40 +targetIdent +0 +MProject +1 +MComponent +0 +2 +WString +4 +WEXE +3 +WString +5 +w_6en +1 +0 +1 +4 +MCommand +0 +5 +MCommand +0 +6 +MItem +12 +wa_pause.exe +7 +WString +4 +WEXE +8 +WVList +4 +9 +MRState +10 +WString +7 +WINLINK +11 +WString +25 +?????No debug information +1 +1 +12 +MRState +13 +WString +7 +WINLINK +14 +WString +14 +?????Debug all +1 +0 +15 +MVState +16 +WString +7 +WINLINK +17 +WString +31 +w????Version (Major.minor.rev): +1 +18 +WString +3 +3.1 +0 +19 +MVState +20 +WString +7 +WINLINK +21 +WString +17 +w????Description: +1 +22 +WString +21 +Winamp Control Centre +0 +23 +WVList +0 +-1 +1 +1 +0 +24 +WPickList +6 +25 +MItem +3 +*.c +26 +WString +4 +COBJ +27 +WVList +2 +28 +MRState +29 +WString +3 +WCC +30 +WString +29 +?????No debugging information +1 +1 +31 +MRState +32 +WString +3 +WCC +33 +WString +24 +?????Full debugging info +1 +0 +34 +WVList +0 +-1 +1 +1 +0 +35 +MItem +10 +wa_pause.c +36 +WString +4 +COBJ +37 +WVList +0 +38 +WVList +0 +25 +1 +1 +0 +39 +MItem +3 +*.h +40 +WString +3 +NIL +41 +WVList +0 +42 +WVList +0 +-1 +1 +1 +0 +43 +MItem +8 +common.h +44 +WString +3 +NIL +45 +WVList +0 +46 +WVList +0 +39 +1 +1 +0 +47 +MItem +4 +*.rc +48 +WString +5 +WRESC +49 +WVList +0 +50 +WVList +0 +-1 +1 +1 +0 +51 +MItem +11 +wa_pause.rc +52 +WString +5 +WRESC +53 +WVList +0 +54 +WVList +0 +47 +1 +1 +0 diff --git a/src/win16/wa_play.c b/src/win16/wa_play.c new file mode 100644 index 0000000..be1e403 --- /dev/null +++ b/src/win16/wa_play.c @@ -0,0 +1,25 @@ +/*************************************************/ +/* WinAmp Control Centre */ +/* Version 1.4.2 */ +/* */ +/* Copyright (c) Owen Rudge 2001-2015 */ +/*************************************************/ + +/* + * 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., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#define COMMAND_TO_EXECUTE 40045 +#include "common.h" diff --git a/src/win16/wa_play.rc b/src/win16/wa_play.rc new file mode 100644 index 0000000..d151103 --- /dev/null +++ b/src/win16/wa_play.rc @@ -0,0 +1,6 @@ +1 ICON "../icons/play.ico" + +#define INTERNALNAME "wa_play\000" +#define ORIGINALFILENAME "wa_play.exe\000" + +#include "common.rc" diff --git a/src/win16/wa_play.tgt b/src/win16/wa_play.tgt new file mode 100644 index 0000000..010d9cf --- /dev/null +++ b/src/win16/wa_play.tgt @@ -0,0 +1,233 @@ +40 +targetIdent +0 +MProject +1 +MComponent +0 +2 +WString +4 +WEXE +3 +WString +5 +w_6en +1 +0 +0 +4 +MCommand +0 +5 +MCommand +0 +6 +MItem +11 +wa_play.exe +7 +WString +4 +WEXE +8 +WVList +4 +9 +MRState +10 +WString +7 +WINLINK +11 +WString +25 +?????No debug information +1 +1 +12 +MRState +13 +WString +7 +WINLINK +14 +WString +14 +?????Debug all +1 +0 +15 +MVState +16 +WString +7 +WINLINK +17 +WString +31 +w????Version (Major.minor.rev): +0 +18 +WString +3 +3.1 +0 +19 +MVState +20 +WString +7 +WINLINK +21 +WString +17 +w????Description: +0 +22 +WString +21 +Winamp Control Centre +0 +23 +WVList +0 +-1 +1 +1 +0 +24 +WPickList +6 +25 +MItem +3 +*.c +26 +WString +4 +COBJ +27 +WVList +2 +28 +MRState +29 +WString +3 +WCC +30 +WString +29 +?????No debugging information +1 +1 +31 +MRState +32 +WString +3 +WCC +33 +WString +24 +?????Full debugging info +1 +0 +34 +WVList +0 +-1 +1 +1 +0 +35 +MItem +9 +wa_play.c +36 +WString +4 +COBJ +37 +WVList +0 +38 +WVList +0 +25 +1 +1 +0 +39 +MItem +3 +*.h +40 +WString +3 +NIL +41 +WVList +0 +42 +WVList +0 +-1 +1 +1 +0 +43 +MItem +8 +common.h +44 +WString +3 +NIL +45 +WVList +0 +46 +WVList +0 +39 +1 +1 +0 +47 +MItem +4 +*.rc +48 +WString +5 +WRESC +49 +WVList +0 +50 +WVList +0 +-1 +1 +1 +0 +51 +MItem +10 +wa_play.rc +52 +WString +5 +WRESC +53 +WVList +0 +54 +WVList +0 +47 +1 +1 +0 diff --git a/src/win16/wa_prev.c b/src/win16/wa_prev.c new file mode 100644 index 0000000..8852c6c --- /dev/null +++ b/src/win16/wa_prev.c @@ -0,0 +1,25 @@ +/*************************************************/ +/* WinAmp Control Centre */ +/* Version 1.4.2 */ +/* */ +/* Copyright (c) Owen Rudge 2001-2015 */ +/*************************************************/ + +/* + * 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., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#define COMMAND_TO_EXECUTE 40044 +#include "common.h" diff --git a/src/win16/wa_prev.rc b/src/win16/wa_prev.rc new file mode 100644 index 0000000..cd9cdaf --- /dev/null +++ b/src/win16/wa_prev.rc @@ -0,0 +1,6 @@ +1 ICON "../icons/prev.ico" + +#define INTERNALNAME "wa_prev\000" +#define ORIGINALFILENAME "wa_prev.exe\000" + +#include "common.rc" diff --git a/src/win16/wa_prev.tgt b/src/win16/wa_prev.tgt new file mode 100644 index 0000000..bce14e9 --- /dev/null +++ b/src/win16/wa_prev.tgt @@ -0,0 +1,233 @@ +40 +targetIdent +0 +MProject +1 +MComponent +0 +2 +WString +4 +WEXE +3 +WString +5 +w_6en +1 +0 +0 +4 +MCommand +0 +5 +MCommand +0 +6 +MItem +11 +wa_prev.exe +7 +WString +4 +WEXE +8 +WVList +4 +9 +MRState +10 +WString +7 +WINLINK +11 +WString +25 +?????No debug information +1 +1 +12 +MRState +13 +WString +7 +WINLINK +14 +WString +14 +?????Debug all +1 +0 +15 +MVState +16 +WString +7 +WINLINK +17 +WString +31 +w????Version (Major.minor.rev): +0 +18 +WString +3 +3.1 +0 +19 +MVState +20 +WString +7 +WINLINK +21 +WString +17 +w????Description: +0 +22 +WString +21 +Winamp Control Centre +0 +23 +WVList +0 +-1 +1 +1 +0 +24 +WPickList +6 +25 +MItem +3 +*.c +26 +WString +4 +COBJ +27 +WVList +2 +28 +MRState +29 +WString +3 +WCC +30 +WString +29 +?????No debugging information +1 +1 +31 +MRState +32 +WString +3 +WCC +33 +WString +24 +?????Full debugging info +1 +0 +34 +WVList +0 +-1 +1 +1 +0 +35 +MItem +9 +wa_prev.c +36 +WString +4 +COBJ +37 +WVList +0 +38 +WVList +0 +25 +1 +1 +0 +39 +MItem +3 +*.h +40 +WString +3 +NIL +41 +WVList +0 +42 +WVList +0 +-1 +1 +1 +0 +43 +MItem +8 +common.h +44 +WString +3 +NIL +45 +WVList +0 +46 +WVList +0 +39 +1 +1 +0 +47 +MItem +4 +*.rc +48 +WString +5 +WRESC +49 +WVList +0 +50 +WVList +0 +-1 +1 +1 +0 +51 +MItem +10 +wa_prev.rc +52 +WString +5 +WRESC +53 +WVList +0 +54 +WVList +0 +47 +1 +1 +0 diff --git a/src/win16/wa_show.c b/src/win16/wa_show.c new file mode 100644 index 0000000..34ab3a0 --- /dev/null +++ b/src/win16/wa_show.c @@ -0,0 +1,44 @@ +/*************************************************/ +/* WinAmp Control Centre */ +/* Version 1.4.2 */ +/* */ +/* Copyright (c) Owen Rudge 2001-2015 */ +/*************************************************/ + +/* + * 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., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#include + +int PASCAL WinMain(HINSTANCE hCurInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) +{ + HWND hwndWinamp; + + hwndWinamp = FindWindow("Winamp v1.x", NULL); + + if (hwndWinamp == NULL) + { + MessageBox(NULL, "Winamp is not running.", "Winamp Control Centre", MB_OK); + return(0); + } + else + { + ShowWindow(hwndWinamp, SW_SHOWNORMAL); + } + + return(0); +} + diff --git a/src/win16/wa_show.rc b/src/win16/wa_show.rc new file mode 100644 index 0000000..e88c38b --- /dev/null +++ b/src/win16/wa_show.rc @@ -0,0 +1,4 @@ +#define INTERNALNAME "wa_show\000" +#define ORIGINALFILENAME "wa_show.exe\000" + +#include "common.rc" \ No newline at end of file diff --git a/src/win16/wa_show.tgt b/src/win16/wa_show.tgt new file mode 100644 index 0000000..58d8c92 --- /dev/null +++ b/src/win16/wa_show.tgt @@ -0,0 +1,173 @@ +40 +targetIdent +0 +MProject +1 +MComponent +0 +2 +WString +4 +WEXE +3 +WString +5 +w_6en +1 +0 +0 +4 +MCommand +0 +5 +MCommand +0 +6 +MItem +11 +wa_show.exe +7 +WString +4 +WEXE +8 +WVList +4 +9 +MRState +10 +WString +7 +WINLINK +11 +WString +25 +?????No debug information +1 +1 +12 +MRState +13 +WString +7 +WINLINK +14 +WString +14 +?????Debug all +1 +0 +15 +MVState +16 +WString +7 +WINLINK +17 +WString +31 +w????Version (Major.minor.rev): +0 +18 +WString +3 +3.1 +0 +19 +MVState +20 +WString +7 +WINLINK +21 +WString +17 +w????Description: +0 +22 +WString +21 +Winamp Control Centre +0 +23 +WVList +0 +-1 +1 +1 +0 +24 +WPickList +4 +25 +MItem +3 +*.c +26 +WString +4 +COBJ +27 +WVList +0 +28 +WVList +0 +-1 +1 +1 +0 +29 +MItem +9 +wa_show.c +30 +WString +4 +COBJ +31 +WVList +0 +32 +WVList +0 +25 +1 +1 +0 +33 +MItem +4 +*.rc +34 +WString +5 +WRESC +35 +WVList +0 +36 +WVList +0 +-1 +1 +1 +0 +37 +MItem +10 +wa_show.rc +38 +WString +5 +WRESC +39 +WVList +0 +40 +WVList +0 +33 +1 +1 +0 diff --git a/src/win16/wa_stop.c b/src/win16/wa_stop.c new file mode 100644 index 0000000..3c99c25 --- /dev/null +++ b/src/win16/wa_stop.c @@ -0,0 +1,25 @@ +/*************************************************/ +/* WinAmp Control Centre */ +/* Version 1.4.2 */ +/* */ +/* Copyright (c) Owen Rudge 2001-2015 */ +/*************************************************/ + +/* + * 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., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#define COMMAND_TO_EXECUTE 40047 +#include "common.h" diff --git a/src/win16/wa_stop.rc b/src/win16/wa_stop.rc new file mode 100644 index 0000000..a8981fb --- /dev/null +++ b/src/win16/wa_stop.rc @@ -0,0 +1,6 @@ +1 ICON "../icons/stop.ico" + +#define INTERNALNAME "wa_stop\000" +#define ORIGINALFILENAME "wa_stop.exe\000" + +#include "common.rc" diff --git a/src/win16/wa_stop.tgt b/src/win16/wa_stop.tgt new file mode 100644 index 0000000..ea27e2e --- /dev/null +++ b/src/win16/wa_stop.tgt @@ -0,0 +1,233 @@ +40 +targetIdent +0 +MProject +1 +MComponent +0 +2 +WString +4 +WEXE +3 +WString +5 +w_6en +1 +0 +1 +4 +MCommand +0 +5 +MCommand +0 +6 +MItem +11 +wa_stop.exe +7 +WString +4 +WEXE +8 +WVList +4 +9 +MRState +10 +WString +7 +WINLINK +11 +WString +25 +?????No debug information +1 +1 +12 +MRState +13 +WString +7 +WINLINK +14 +WString +14 +?????Debug all +1 +0 +15 +MVState +16 +WString +7 +WINLINK +17 +WString +31 +w????Version (Major.minor.rev): +1 +18 +WString +3 +3.1 +0 +19 +MVState +20 +WString +7 +WINLINK +21 +WString +17 +w????Description: +1 +22 +WString +21 +Winamp Control Centre +0 +23 +WVList +0 +-1 +1 +1 +0 +24 +WPickList +6 +25 +MItem +3 +*.c +26 +WString +4 +COBJ +27 +WVList +2 +28 +MRState +29 +WString +3 +WCC +30 +WString +29 +?????No debugging information +1 +1 +31 +MRState +32 +WString +3 +WCC +33 +WString +24 +?????Full debugging info +1 +0 +34 +WVList +0 +-1 +1 +1 +0 +35 +MItem +9 +wa_stop.c +36 +WString +4 +COBJ +37 +WVList +0 +38 +WVList +0 +25 +1 +1 +0 +39 +MItem +3 +*.h +40 +WString +3 +NIL +41 +WVList +0 +42 +WVList +0 +-1 +1 +1 +0 +43 +MItem +8 +common.h +44 +WString +3 +NIL +45 +WVList +0 +46 +WVList +0 +39 +1 +1 +0 +47 +MItem +4 +*.rc +48 +WString +5 +WRESC +49 +WVList +0 +50 +WVList +0 +-1 +1 +1 +0 +51 +MItem +10 +wa_stop.rc +52 +WString +5 +WRESC +53 +WVList +0 +54 +WVList +0 +47 +1 +1 +0 diff --git a/src/win32/winampcc.c b/src/win32/winampcc.c new file mode 100644 index 0000000..cc1dc83 --- /dev/null +++ b/src/win32/winampcc.c @@ -0,0 +1,248 @@ +/*************************************************/ +/* WinAmp Control Centre */ +/* Version 1.4.2 */ +/* */ +/* Copyright (c) Owen Rudge 2001-2015 */ +/*************************************************/ + +/* + * 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., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#include +#include +#include + +#define IS_COMMAND_LINE(cmd) CheckCommandLine(argc, argv, cmd) +#define IS_COMMAND_LINE_ARG(cmd, i) lstrcmpi(argv[i], cmd) + +int CheckCommandLine(int argc, char **argv, char *cmd); +int ParseCommandLine(char *line, char **argv, int max_argc); +void RunThroughCmdLineOptions(int argc, char **argv, HWND hwndWinamp, char *szINIFileName); + +char copyright_str[] = "Winamp Control Centre 1.4.2. Copyright \xA9 Owen Rudge 2001-2015. All Rights Reserved. www.owenrudge.net"; +char build_date[] = "Built on " __DATE__ " at " __TIME__ "."; + +BOOLEAN PathOnCmdLine = FALSE; + +int WINAPI WinMain(HINSTANCE hCurInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow) +{ + HWND hwndWinamp; + char szINIFileName[250]; + char szFileName[250]; + char szPathStr[250]; + char szAppPath[MAX_PATH]; + char szWinClass[250]; + char *pathloc; + BOOLEAN DisplayError; + UINT ret; + int argc; + char *argv[64]; // max 64 command line arguments + + argc = ParseCommandLine(GetCommandLine(), argv, 64); + + GetModuleFileName(hCurInstance, szFileName, 250); + + pathloc = strrchr(szFileName, '\\'); + + if (pathloc == NULL) + strcpy(szINIFileName, "WINAMPCC.INI"); // don't want any errors, so let's play it safe + else + { + memset(szPathStr, 0, sizeof(szPathStr)); + memcpy(szPathStr, szFileName, pathloc-szFileName); + + strcpy(szINIFileName, szPathStr); + strcat(szINIFileName, "\\WINAMPCC.INI"); // dirty cludge, but it seems to be required :-( + } + + GetPrivateProfileString("Configuration", "Class", "Winamp v1.x", szWinClass, sizeof(szWinClass), szINIFileName); + + if (strlen(szWinClass) == 0) + strcpy(szWinClass, "Winamp v1.x"); + + hwndWinamp = FindWindow(szWinClass, NULL); + + if (hwndWinamp == NULL) + { + if (GetPrivateProfileInt("Configuration", "Autoload", 0, szINIFileName) == 1) + { + if (GetPrivateProfileInt("Configuration", "PathOnCmdLine", 0, szINIFileName) == 1) + { + PathOnCmdLine = TRUE; + strcpy(szAppPath, argv[1]); + } + else + { + PathOnCmdLine = FALSE; + GetPrivateProfileString("Configuration", "Path", "", szAppPath, sizeof(szAppPath), szINIFileName); + } + + if (strlen(szAppPath) == 0) + DisplayError = TRUE; + else + { + ret = WinExec(szAppPath, SW_NORMAL); + + if (ret < 32) + MessageBox(NULL, "Unable to start Winamp.", "Winamp Control Centre", MB_OK | MB_ICONEXCLAMATION); + else + { + Sleep(GetPrivateProfileInt("Configuration", "WaitLength", 1000, szINIFileName)); + + hwndWinamp = FindWindow(szWinClass, NULL); + + if ((IS_COMMAND_LINE("/HIDE") == 0) || (GetPrivateProfileInt("Configuration", "HideOnLoad", 0, szINIFileName) == 1)) + { + ShowWindow(hwndWinamp, SW_MINIMIZE); + ShowWindow(hwndWinamp, SW_HIDE); + } + } + } + } + + if (DisplayError == TRUE) + { + MessageBox(NULL, "Winamp is not running.", "Winamp Control Centre", MB_OK | MB_ICONEXCLAMATION); + return(0); + } + } + + if (DisplayError != TRUE) + RunThroughCmdLineOptions(argc, argv, hwndWinamp, szINIFileName); + + return(TRUE); +} + +int ParseCommandLine(char *line, char **argv, int max_argc) +{ + int n = 0; + + do + { + // skip whitespace + while (*line == ' ' || *line == '\t') + { + line++; + } + + // end? + if (*line == 0) + break; + + // special handling when quoted + if (*line == '"') + { + argv[n++] = ++line; + + while (*line != '"') + { + if (*line == 0) + return n; + + line++; + } + } + else + { + argv[n++] = line; + + while (*line != ' ' && *line != '\t') + { + if (*line == 0) + return n; + + line++; + } + } + + *line++ = 0; + } + while (n != max_argc); + + return n; +} + +int CheckCommandLine(int argc, char **argv, char *cmd) +{ + int i; + + for (i = 1; i < argc; i++) + { + if (lstrcmpi(argv[i], cmd) == 0) + return(0); + } + + return(1); +} + +void RunThroughCmdLineOptions(int argc, char **argv, HWND hwndWinamp, char *szINIFileName) +{ + UINT uMsg; + int i, start; + + if (PathOnCmdLine == TRUE) + start = 2; + else + start = 1; + + for (i = start; i < argc; i++) + { + if (IS_COMMAND_LINE_ARG("/HIDE", i) == 0) + { + ShowWindow(hwndWinamp, SW_MINIMIZE); + ShowWindow(hwndWinamp, SW_HIDE); + } + else if (IS_COMMAND_LINE_ARG("/SHOW", i) == 0) + { + ShowWindow(hwndWinamp, SW_SHOWNORMAL); + } + else if (IS_COMMAND_LINE_ARG("/FLIPSHOW", i) == 0) + { + if (IsWindowVisible(hwndWinamp) == TRUE) + { + ShowWindow(hwndWinamp, SW_MINIMIZE); + ShowWindow(hwndWinamp, SW_HIDE); + } + else + ShowWindow(hwndWinamp, SW_SHOWNORMAL); + } + else if (IS_COMMAND_LINE_ARG("/TOFRONT", i) == 0) + { + SetForegroundWindow(hwndWinamp); + } + else + { + if (IS_COMMAND_LINE_ARG("/PLAY", i) == 0) + uMsg = 40045; + else if (IS_COMMAND_LINE_ARG("/STOP", i) == 0) + uMsg = 40047; + else if (IS_COMMAND_LINE_ARG("/NEXT", i) == 0) + uMsg = 40048; + else if (IS_COMMAND_LINE_ARG("/PREV", i) == 0) + uMsg = 40044; + else if (IS_COMMAND_LINE_ARG("/PAUSE", i) == 0) + uMsg = 40046; + else + uMsg = GetPrivateProfileInt("Commands", argv[i], 0, szINIFileName); + + if (uMsg != 0) + { + SendMessage(hwndWinamp, WM_COMMAND, uMsg, (DWORD)NULL); + Sleep(0); + } + } + } +} diff --git a/src/win32/winampcc.ini b/src/win32/winampcc.ini new file mode 100644 index 0000000..797bdfb --- /dev/null +++ b/src/win32/winampcc.ini @@ -0,0 +1,192 @@ +; Winamp Control Centre 1.4.2 +; Configuration File +; +; See README.TXT for more information +; +; Overview of this file +; --------------------- +; +; [Configuration] +; +; Class This is the window class of the Winamp window. Usually "Winamp v1.x", +; but can be set via Winamp command line parameters. +; +; Path Path to Winamp. Required if Autoload is set to 1. +; +; Autoload If set to 1, Winamp automatically loads when you call Winamp Control Centre. +; +; WaitLength The length of time to wait, in milliseconds, between starting Winamp and sending +; a command. Slower computers will require a longer wait. +; +; HideOnLoad If set to 1, Winamp will be hidden after it loads. +; +; PathOnCmdLine If set to 1, WinampCC will look for the path to Winamp as the first command line argument. +; If the path contains spaces, it must be enclosed in quotation marks. +; +; Please see README.TXT for information on the [Commands] section of this file. + +[Configuration] +Class=Winamp v1.x +Path=C:\Program Files\Winamp\Winamp.exe +Autoload=1 +WaitLength=100 +HideOnLoad=1 +PathOnCmdLine=0 + +[Commands] +PLAY=40045 +PAUSE=40046 +STOP=40047 +NEXT=40048 +PREV=40044 +-PLAY=40045 +-PAUSE=40046 +-STOP=40047 +-NEXT=40048 +-PREV=40044 +/VOLUP=40058 +/VOLDOWN=40059 +=40046 + +/QUIT=40001 +/PREFS=40012 +/REPEAT=40022 +/SHUFFLE=40023 +/TOGGLE_EQ=40036 +/OPT_TIME_ELAPSED=40037 +/OPT_TIME_REMAINING=40038 +/TOGGLE_PLAYLIST=40040 +/ABOUT=40041 +/MAINMENU=40043 +/FORWARD_5SECS=40060 +/REWIND_5SECS=40061 + +; The following section is not used by Winamp Control Centre +; It is included here as reference, from the Winamp SDK. + +[Other Possible Commands] +#define WINAMP_FILE_QUIT 40001 +#define WINAMP_OPTIONS_PREFS 40012 +#define WINAMP_OPTIONS_AOT 40019 +#define WINAMP_FILE_REPEAT 40022 +#define WINAMP_FILE_SHUFFLE 40023 +#define WINAMP_HIGH_PRIORITY 40025 +#define WINAMP_FILE_PLAY 40029 +#define WINAMP_OPTIONS_EQ 40036 +#define WINAMP_OPTIONS_ELAPSED 40037 +#define WINAMP_OPTIONS_REMAINING 40038 +#define WINAMP_OPTIONS_PLEDIT 40040 +#define WINAMP_HELP_ABOUT 40041 +#define WINAMP_MAINMENU 40043 +#define WINAMP_BUTTON1 40044 +#define WINAMP_BUTTON2 40045 +#define WINAMP_BUTTON3 40046 +#define WINAMP_BUTTON4 40047 +#define WINAMP_BUTTON5 40048 +#define WINAMP_VOLUMEUP 40058 +#define WINAMP_VOLUMEDOWN 40059 +#define WINAMP_FFWD5S 40060 +#define WINAMP_REW5S 40061 +#define WINAMP_NEXT_WINDOW 40063 +#define WINAMP_OPTIONS_WINDOWSHADE 40064 +#define WINAMP_BUTTON1_SHIFT 40144 +#define WINAMP_BUTTON2_SHIFT 40145 +#define WINAMP_BUTTON3_SHIFT 40146 +#define WINAMP_BUTTON4_SHIFT 40147 +#define WINAMP_BUTTON5_SHIFT 40148 +#define WINAMP_BUTTON1_CTRL 40154 +#define WINAMP_BUTTON2_CTRL 40155 +#define WINAMP_BUTTON3_CTRL 40156 +#define WINAMP_BUTTON4_CTRL 40157 +#define WINAMP_BUTTON5_CTRL 40158 +#define WINAMP_OPTIONS_DSIZE 40165 +#define IDC_SORT_FILENAME 40166 +#define IDC_SORT_FILETITLE 40167 +#define IDC_SORT_ENTIREFILENAME 40168 +#define IDC_SELECTALL 40169 +#define IDC_SELECTNONE 40170 +#define IDC_SELECTINV 40171 +#define IDM_EQ_LOADPRE 40172 +#define IDM_EQ_LOADMP3 40173 +#define IDM_EQ_LOADDEFAULT 40174 +#define IDM_EQ_SAVEPRE 40175 +#define IDM_EQ_SAVEMP3 40176 +#define IDM_EQ_SAVEDEFAULT 40177 +#define IDM_EQ_DELPRE 40178 +#define IDM_EQ_DELMP3 40180 +#define IDC_PLAYLIST_PLAY 40184 +#define WINAMP_FILE_LOC 40185 +#define WINAMP_OPTIONS_EASYMOVE 40186 +#define WINAMP_FILE_DIR 40187 +#define WINAMP_EDIT_ID3 40188 +#define WINAMP_TOGGLE_AUTOSCROLL 40189 +#define WINAMP_VISSETUP 40190 +#define WINAMP_PLGSETUP 40191 +#define WINAMP_VISPLUGIN 40192 +#define WINAMP_JUMP 40193 +#define WINAMP_JUMPFILE 40194 +#define WINAMP_JUMP10FWD 40195 +#define WINAMP_JUMP10BACK 40197 + +; The following commands have been taken from +; http://samurize.parfe.jp/download/etc/WinampCC_commands.ini +; +; Some may already be included above, some may not be. +; +; These lines must be copied to the [Commands] section above +; if you want to use them. +; +AddTrackAsBook=40321 // Adds current track as a bookmark +CloseWinamp=40001 // Close Winamp +ConfigureVisual=40221 // Configure current visualization plug-in +EndOfPlaylist=40158 // Go to end of playlist +ExecuteVisualPlugin=40192 // Execute current visualization plug-in +FadeAndStop=40147 // Fadeout and stop +Forward5Secs=40148 // Fast-forward 5 seconds +LoadDefaultPreset=40174 // Load default preset +LoadPresetFromEQ=40253 // Load a preset from EQ +LowerVol=40059 // Lower volume by 1% +NextTrack=40048 // Next track button +OpenAutoLoadPreset=40176 // Opens auto-load save preset +OpenAutoLoadPresets=40173 // Opens auto-load presets dialog +OpenDeleteAutoLoad=40180 // Opens delete an auto load preset dialog +OpenDeletePreset=40178 // Opens delete preset dialog +OpenEditBookmarks=40320 // Show the edit bookmarks +OpenFile=40029 // Open file dialog +OpenFileInfo=40188 // Open file info box +OpenJumptoFile=40194 // Open jump to file dialog +OpenJumptoTime=40193 // Open jump to time dialog +OpenLoadPreset=40172 // Opens load presets dialog +OpenPlugOpts=40190 // Open visualization options +OpenSavePreset=40175 // Opens save preset dialog +OpenSkinSel=40219 // Open skin selector +OpenURL=40155 // Open URL dialog +OpenVisualPlugOpts=40191 // Open visualization plug-in options +PausePlay=40046 // Pause/Unpause button +PlayAudioCD=40323 // Play audio CD +Prev10Tracks=40197 // Moves back 10 tracks in playlist +PrevTrack=40044 // Previous track button +RaiseVol=40058 // Raise volume by 1% +ReloadSkin=40291 // Reload the current skin +Rewind5Secs=40144 // Fast-rewind 5 seconds +SavePresetToEQ=40254 // Save a preset to EQF +ShowMainWindow=40258 // Toggle main window visible +StartOfPlaylist=40154 // Start of playlist +StartPlay=40045 // Play button +StopAfterTrack=40157 // Stop after current track +StopPlay=40047 // Stop button +ToggleAbout=40041 // Toggle about box +ToggleDoubleSize=40165 // Toggle doublesize mode +ToggleEQ=40036 // Toggle EQ +ToggleEasymove=40186 // Toggle easymove +ToggleMainShade=40064 // Toggle Windowshade +ToggleMiniBrows=40298 // Toggle minibrowser +ToggleOnTop=40019 // Toggle always on top +TogglePLShade=40266 // Toggle Playlist Windowshade +TogglePlaylist=40040 // Toggle playlist editor +TogglePrefs=40012 // Toggle preferences screen +ToggleRepeat=40022 // Toggle repeat +ToggleShuffle=40023 // Toggle shuffle +ToggleTimeElapsed=40037 // Set time display mode to elapsed +ToggleTimeRemaining=40038 // Set time display mode to remaining +ToggleTitleScroll=40189 // Toggle title Autoscrolling \ No newline at end of file diff --git a/src/win32/winampcc.rc b/src/win32/winampcc.rc new file mode 100644 index 0000000..8c00ba2 --- /dev/null +++ b/src/win32/winampcc.rc @@ -0,0 +1,60 @@ +/*************************************************/ +/* WinAmp Control Centre */ +/* Version 1.4.2 */ +/* */ +/* Copyright (c) Owen Rudge 2001-2015 */ +/*************************************************/ + +/* + * 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., + * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. + */ + +#include + +1 ICON "../icons/play.ico" +2 ICON "../icons/stop.ico" +3 ICON "../icons/pause.ico" +4 ICON "../icons/prev.ico" +5 ICON "../icons/next.ico" + +1 VERSIONINFO +FILEVERSION 1, 4, 2, 0 +PRODUCTVERSION 1, 4, 2, 0 +FILEOS VOS__WINDOWS32 +FILETYPE VFT_APP +{ + BLOCK "StringFileInfo" + { + BLOCK "040904E4" + { + VALUE "CompanyName", "Owen Rudge\000\000" + VALUE "FileDescription", "Winamp Control Centre\000" + VALUE "FileVersion", "1.4.2\000\000" + VALUE "InternalName", "winampcc\000" + VALUE "LegalCopyright", "Copyright � Owen Rudge 2001-2015. All Rights Reserved.\000\000" + VALUE "OriginalFilename", "winampcc.exe\000" + VALUE "ProductName", "Winamp Control Centre\000" + VALUE "ProductVersion", "1.4.2\000\000" + } + + } + + BLOCK "VarFileInfo" + { + VALUE "Translation", 0x0809, 1252 + } + +} + diff --git a/src/win32/winampcc.tgt b/src/win32/winampcc.tgt new file mode 100644 index 0000000..e263a8e --- /dev/null +++ b/src/win32/winampcc.tgt @@ -0,0 +1,206 @@ +40 +targetIdent +0 +MProject +1 +MComponent +0 +2 +WString +4 +NEXE +3 +WString +5 +nw2en +1 +0 +0 +4 +MCommand +0 +5 +MCommand +0 +6 +MItem +12 +winampcc.exe +7 +WString +4 +NEXE +8 +WVList +3 +9 +MRState +10 +WString +7 +WINLINK +11 +WString +25 +?????No debug information +1 +1 +12 +MRState +13 +WString +7 +WINLINK +14 +WString +14 +?????Debug all +1 +0 +15 +MVState +16 +WString +7 +WINLINK +17 +WString +12 +nw2??System: +1 +18 +WString +5 +win95 +0 +19 +WVList +1 +20 +ActionStates +21 +WString +12 +Local &Debug +22 +WVList +0 +-1 +1 +1 +0 +23 +WPickList +4 +24 +MItem +3 +*.c +25 +WString +4 +COBJ +26 +WVList +2 +27 +MRState +28 +WString +3 +WCC +29 +WString +29 +?????No debugging information +1 +1 +30 +MRState +31 +WString +3 +WCC +32 +WString +24 +?????Full debugging info +1 +0 +33 +WVList +0 +-1 +1 +1 +0 +34 +MItem +10 +winampcc.c +35 +WString +4 +COBJ +36 +WVList +0 +37 +WVList +0 +24 +1 +1 +0 +38 +MItem +4 +*.rc +39 +WString +5 +NRESC +40 +WVList +1 +41 +MVState +42 +WString +3 +WRC +43 +WString +23 +?????Macro definitions: +1 +44 +WString +10 +__WATCOM__ +0 +45 +WVList +0 +-1 +1 +1 +0 +46 +MItem +11 +winampcc.rc +47 +WString +5 +NRESC +48 +WVList +0 +49 +WVList +0 +38 +1 +1 +0 diff --git a/src/winampcc.wpj b/src/winampcc.wpj new file mode 100644 index 0000000..d1df971 --- /dev/null +++ b/src/winampcc.wpj @@ -0,0 +1,183 @@ +40 +projectIdent +0 +VpeMain +1 +WRect +0 +0 +7680 +9216 +2 +MProject +3 +MCommand +0 +4 +MCommand +0 +8 +5 +WFileName +18 +win32\winampcc.tgt +6 +WFileName +17 +win16\wa_hide.tgt +7 +WFileName +17 +win16\wa_next.tgt +8 +WFileName +18 +win16\wa_pause.tgt +9 +WFileName +17 +win16\wa_play.tgt +10 +WFileName +17 +win16\wa_prev.tgt +11 +WFileName +17 +win16\wa_show.tgt +12 +WFileName +17 +win16\wa_stop.tgt +13 +WVList +8 +14 +VComponent +15 +WRect +0 +0 +5680 +4257 +0 +0 +16 +WFileName +18 +win32\winampcc.tgt +0 +1 +17 +VComponent +18 +WRect +133 +369 +5680 +4266 +0 +0 +19 +WFileName +17 +win16\wa_hide.tgt +0 +1 +20 +VComponent +21 +WRect +224 +739 +5680 +4276 +0 +0 +22 +WFileName +17 +win16\wa_next.tgt +0 +0 +23 +VComponent +24 +WRect +373 +1090 +5685 +4285 +0 +0 +25 +WFileName +18 +win16\wa_pause.tgt +0 +0 +26 +VComponent +27 +WRect +416 +398 +5685 +4285 +0 +0 +28 +WFileName +17 +win16\wa_play.tgt +0 +0 +29 +VComponent +30 +WRect +624 +606 +5685 +4285 +0 +0 +31 +WFileName +17 +win16\wa_prev.tgt +0 +1 +32 +VComponent +33 +WRect +832 +815 +5685 +4285 +0 +0 +34 +WFileName +17 +win16\wa_show.tgt +0 +1 +35 +VComponent +36 +WRect +1040 +1024 +5685 +4285 +0 +0 +37 +WFileName +17 +win16\wa_stop.tgt +0 +1 +14