PCE/TG Resources Mini-FAQ v0.15 Last Updated: 14 April 1997 Written by: David Woodford (dfw@umich.edu) Table of Contents Introduction C.1 The Hack List 1.0 What is the purpose of the TGHack List? 1.1 OK, I want to program; What do I need? 1.2 Where can I get info on PCE/TG16 programming? C.2 Resources 2.0 PCE GreenHouse 2.0.1 What is the PCE GreenHouse? 2.0.2 Some questions and answers. 2.1 Develo Book 2.1.1 What is this "Develo" anyway? 2.1.2 How/Where can I get it? 2.1.3 Why would I want one? 2.2 Misc. Resources 2.2.1 Magazines/books/etc. 2.2.2 Internet 2.2.3 Develo Translations C.3 Development 3.0 What programs/games have been made for the PCE/TG so far? 3.1 Emulators 3.2 What's going on now? (Semi-recent History) --------------------------------------------------------------------- ************** Introduction * ************** Welcome to the PCE/TG Resources Mini-FAQ! There's not much right now, but as more information surfaces, I'll try to keep this FAQ updated as much as possible. Right now, we (the hack list) are on the brink of being able to start producing programs on the PCE. This FAQ was made to help you get started with programming by making you aware of what kinds of resources are available and how to get them if available. This FAQ does not teach you how to program on the PCE, nor does it cover the PCE hardware, however Joe LoCicero's excellent TG Internals web page (1.2) should have a good amount of programming material in the future. If there's anything that needs to be added/corrected/updated etc, just email me. Thanks! Enjoy! ----------------------------------------------------------------------- ******************** C.1 The Hack List * ******************** 1.0 What is the purpose of the TGHack List? The main purpose of the hack list is to discuss and learn about the PC Engine hardware and ultimately produce a 'developer's system' in order to make programs. The list is NOT about trading/obtaining ROM images. Don't even ask. Information about ROMs in the technical sense (ie programming techniques, graphic/music formats, how the information is stored, etc) is welcome. 1.1 OK, I want to program; What do I need? Right now, you need to wait just a little while longer. :) You should start learning the opcodes by going to Joe's web page. As of this moment, there's not much you can do except write some small assembly programs to familiarize yourself with the HuC6280 instructions. 1.2 Where can I get info on PCE/TG16 programming? There are the Develo books that are described later, or you can go to Joe's cool TurboGrafx Internals page at: http://joyce.eng.yale.edu/tginternals ----------------------------------------------------------------------- **************** C.2 Resources * **************** 2.0 PCE GreenHouse ---------------------- 2.0.1 What is the PCE GreenHouse? Here is the original post, edited for content, by the maker of the GreenHouse, Joe LoCicero: Posted around Dec. 1 1996 ============================================================== Friends: As my project proceeds smoothly into the final phase of design (fabrication and construction), I have finally become able to take orders for the PCE Greenhouse. PLEASE READ THIS ENTIRE MESSAGE, because the important stuff is at the bottom. For those of you who don't remember this project, or don't know what I'm talking about -- here's a brief summary of this unit's capabilities. The PCE Greenhouse is an 8 megabit, battery-backed, fully-reprogrammable development system for the TurboGrafx, TurboDuo, or PC Engine. Features include: o Capture of HuCard images for programming and development purposes ONLY o Emulation of a HuCard for programming and development purposes ONLY o US <-> Japanese conversion (in hardware AND software) o Creation of "patch files" for distribution of your own modifications to commercial software to others o Save game backup (with future code to be developed by the tghack list) o Operation on a single 9-volt battery o Attractive almond or grey enclosure o Owner's manual and 30-day warranty The terms of the warranty are as follows: If you receive the unit, and it malfunctions within 30 days, I'll repair the unit for free (you pay shipping to me and back). If it breaks after 30 days, I'll repair it for you, but I'll have to charge you for any parts & labor. This warranty doesn't cover abuse, willful destruction of the unit, spilling Coke on it, etc. As I've said, it's an *informal* warranty. Please don't take me to court -- you won't get any money out of me, and you'll just be wasting your time. :) Requirements for using the PCE Greenhouse are: o IBM PC computer (8088 or better) o Color graphics adapter (VGA recommended) o Parallel port (such as LPT1:) o 3 1/2" or 5 1/4" diskette drive (5 MB hard drive space recommended) (If you don't own the above, you can probably buy one for $10 at a garage or rummage sale, or borrow a friend's.) [...] The price for these units is $175 USD, shipped via insured U.S. Priority Mail. Other shipping methods will be used upon request. Greenhouses will hopefully be shipped before January 1st, 1997, but I'll do my best to get them to you for Christmas. The $175 USD price includes the full 8 megabits of SRAM (contrary to prior postings, the unit *will* use SRAM, and won't be shipped in other configurations. It also is not upgradable to anything larger than 8 megabits.) [...] PLEASE BE AWARE that once I make these units and sell them, they're gone. I won't be making a second batch unless I receive an additional 25 orders or so. If you want one of these units -- *speak now*, because you won't get another chance!!! [...] ======================================================================== From the time this was posted, there have been some changes to the Greenhouse design, but the main functionality is still the same. 2.0.2 Some Questions and Answers Soon after Joe's announcement of the GreenHouse, there were a lot of questions. I managed to save the following text (partially edited) that Joe posted to the hacklist, but this is only a small portion of the questions that were asked. ======================================================================== Hi everyone: [...] First, let me emphasize that Turbo Zone Direct (TZD) is not involved at all with this project. The "diving board" adapters that are being used for the project were sourced from TZD, but this is in no way meant to imply any sort of endorsement of the project by TZD or any of their affiliates. I have a few late, straggling questions that I'd like to answer here. Please direct all followups to this hacklist, not to the main list or private email, for the benefit of everyone else involved. > Can you release the plans so we can build our own? As I have tried to make clear in other emails, a full 90-95% of the cost of this project is for the materials alone. The rest of the cost is to cover my own expenses incurred in purchasing equipment and supplies to fabricate the units. If you were to go out and try and build this on your own, you would inevitably end up spending more than what I'm charging simply because you aren't getting the bulk discount on parts. The Greenhouse is also highly sensitive to problems like ground bounce and line driver strength, which is adversely affected by construction on any material other than a printed circuit board. That is, you probably would have limited success breadboarding or wire-wrapping up a Greenhouse for yourself. If you're really looking for a cheaper solution, you can construct the Develo Box for less money. I'll post plans as soon as I have time, from the Develo Book. There are limitations to using the Develo Box, as I've discussed on this forum previously. The primary one is that you need to use the Develo software to communicate with the box, which is copyrighted software. You therefore need to buy the Develo Book to get this software, which is about 5000 Yen ($50 USD). You also need to find someone in Japan to buy it for you, and send it to you. :) That having been said, I will probably publish schematics for the Greenhouse once the product is ready to deliver. I believe in openness, not proprietary solutions, and am happy to show you what I've done. > Can you send me the source for your Greenhouse software so I can port > it to my Frobozz Magic Computer (or Spliggle OS for x86)? I'm willing to send you source to my communications program specifically for the purposes of porting it to another platform, but not for any other reason. You'll have to sign a written statement agreeing not to change the licensing statements and legal warnings that are included in the program. Communications with people on ports to the BeBox and Linux are already under way. > What's all this about creating custom CDs or HuCards? Can't I just plug > the Greenhouse into the HuCard port and be done with it? Yes, you can! The talk about pressing custom CDROMs or HuCards was aimed at distributing software that we write to people who don't have the Greenhouse. > How much will the programming software cost? As I've mentioned before, it's free to anyone that downloads it. The assembler may not be released concommitantly with the Greenhouse, but the upload/download software will. The assembler isn't my own project; I suspect that those of you out there that have already started work on your own emulators will be glad to pitch in (I've already received some offers to help with this). > How similar is this to the original develo kits made by Hudson? > Are any of the original tools or documentation recreated? In > other words, is it a functional equivalent? Good question! All info I have about the original develo kits implies that they were also 8-megabit ROM emulators for the PCE, but they employed 2 IBM-PC ISA cards to communicate with a specially modified PCE. This way, it was possible to download new code without plugging anything in to the HuCard port, and it was also possible to debug and single step through code. However, a project of that undertaking (modifying people's Duos, Turbos, and PCEs and developing ISA cards) would be an unquestionable waste of resources at this late date. :) As for the original tools, we'll probably have better tools at our disposal than even Hudson engineers have had. With graphics format converters, you can use your favorite photo editing or raytraycing program to create graphics. Assembler technology has advanced somewhat. However, there are always going to be tricks that the developers of a console will not divulge to the programmers. It's up to *you* to help me and the rest of the hacklist members to discover those tricks! :) > Hey Joe, is it possible to convert a .MOD file to play on a PCE > Husystem? How about .GIF or PCX formats? The latter is definitely possible; see previous work on "Hawaiian Island Girls" for a practical example of this. As for MODs, the real problem is the fidelity of the sound generation system, which is limited to 5-bit, 32-sample long samples. MODs might be transformed, but it sure won't be easy... > Since the device is not intended to be connected to both the TG and the > PC at the same time, I assume some sort of bidir IO port w/int isn't > going to be possible, right? No, not at this time. However, trace-gathering may be possible with a firmware "upgrade." The system *can* be used as a System 1.0, 2.0, or 3.0 card -- but not as an ACD (due to the highly unusual way the Turbo/PCE accesses ACD memory). A complete redesign would be necessary for ACD emulation, which probably wouldn't be worth it in the end anyway. (In effect, you're already getting 200% more memory in the System v3.0 card, since there is an extra 4 megabits of memory sitting on the card. It will be interesting to see if games "recognize" this extra memory through some sort of detection process, or if they just look at the verision of the CD Card OS and assume the amount of memory based on that.) [...] ============================================================================ Until the GreenHouse is shipped out to the people that have ordered, this is all the information that I have. Of course Joe knows (literally) the ins and outs of the GreenHouse and I'm sure more information will surface when the 25 people receive their GreenHouse and play around with it. 2.1 Develo Book ------------------- 2.1.1 What is this "Develo" anyway? Develo stands for 'Developer' and is the name of the 2 books that are published by Tokuma Shoten Intermedia. The Develo book describes the architecture of the PC Engine and provides examples on how to program on the PC Engine. NOTE: Future occurrances of the "Develo book" refer to the "Develo Starter Kit-Assembler" unless otherwise noted. Here is a more in-depth description of the Develo books that was posted to the Hack list by Dave Shadoff: ========== (1) The 'assembler starter kit': (5,000 yen - approx $45-50US) - comes with a Super-CDROM (PC-Engine), and a disk (PC-9801 or MSX). - Intended to be used in conjunction with a 'Develo box' (schematic included). This box sells for about $100US, but contains about $10 in parts. - Contains lots of information about the hardware and CD "BIOS" firmware. Also has info about BIOS extensions written by the Develo people. - Disk contains assembler (ie compiler), music language editor, graphic editor, and a few other tools. Drawbacks (for non-Japanese): - book is written in Japanese - disk will not run on a IBM PC (at least most of it won't). The PC-9801 is just different enough from the IBM PC, that this stuff will mostly crash and burn. I think they had an 'update' for IBM's, though... (2) The 'BASIC starter kit': (5,000 yen, like above) - I'm less familiar with the contents of this package. Still, it contains a SuperCD and a computer diskette. Still, must contain some utilities like a graphic editor. - Compiles (interprets ?) BASIC language, rather than assembly language. - Also appears to have an interactive command-line interface, so it is more likely interpreted than compiled. =========== Thanks Dave! 2.1.2 How/Where can I get a Develo book? As far as I know, there are three ways to obtain a Develo book: 1) Order it directly from Tokuma Shoten. There is a catch. On previous posts to the hack list, it has been said that Tokuma Shoten will only ship to addresses within Japan. This means that you must get someone in Japan to order it for you and send it. Obviously, not everyone has connections in Japan, so it might be hard to get. 2) Buy it from a Japanese book store. You should be able to pick one up in a Japanese book store or you can special order it through any Japanese book store, but again you must get someone in Japan to do it for you. It may be possible to order it through one of the Japanese book stores located in the US (or other countries). I've heard that some of the these stores will do special orders, but I don't know for sure. It wouldn't hurt to try. I think Kinokuniya is the name of one Japanese book store chain that has stores in the US. Here's some info that George Palamara told Dave Shaoff and then Dave told me. :) >I saw it at a shop called Llaox Books. Llaox is an electronics chain with a >dozen or so different branches in Akihabara. This one deals with books on >the ground level and game and computer software on the 2-4th floors. 3) Buy it from someone who already owns one. As far as I know, the only people on the hack list that own the Develo book are Joe LoCicero, Dave Shadoff, and myself. It'll probably be next to impossible to get them from us. Sorry. Don't worry, we're translating the relevant info as fast as we can! :) 2.1.3 Why would I want one? If you want to learn almost everything about the PC Engine hardware, then this is the ultimate reference book. If you have any questions about the hardware, you can be sure that the answer is located in there too. Being able to read Japanese would be a plus also. :) Here's a quick excerpt from the table of contents: ============ Ch 1. Hardware Overview I. HuC6280 CPU II. HuC6260 Video Color Encoder (VCE) III. HuC6270 Video Display Controller (VDC) IV. HuC6280 PSG Ch 2. HuC6280 Complete Opcode Listing Ch 3. Programming Examples Ch 4. Memory Map, I/O Map, BIOS Functions, PSG & Graphic Functions ============ Most, if not all of this information will probably be made available on Joe's page or mine if I ever get around to making one. If you've already been to Joe's site, then you know that roughly half of this information is already available. 2.2 Miscellaneous Resources ------------------------------- 2.2.1 Magazines/books/etc. There seems to be only two magazines that cover the PC Engine nowadays. Here's more info from Dave Shadoff: ============= - PC-Engine Fan Super Deluxe... a re-birth of PC-Engine Fan, in a quarterly(?) format, rather than monthly. - 'Develo' magazine, from [Tokuma Shoten]... apparently has programming sections devoted to both systems, and some general stuff about how to use the utils, and what's important when writing games, etc... I believe this is a bi-monthly, but again I'm not sure... ============= Bt Garner has told me that the PCE CD that comes with the Super PCE Fan Deluxe magazine has some Develo stuff on it. He also said there's a program called DVSSE that's apparently a sprite editor. There are some assembly and BASIC programs on the CD also. Bt hasn't been able to use the sprite editor program because it probably requires the Develo box. He's working on it, but the Develo box may be required for him to do anything and he doesn't have one. :( 2.2.2 Internet Other than Joe's web page, there's Joe FTP site! I'll put them both here: http://joyce.eng.yale.edu/tginternals ftp://joyce.eng.yale.edu/pub/TGHack The FTP site contains various programs written by Joe, Dave, Jens and others. It has dissassemblers, some annotated assembly code from PCE games, and other interesting items. Check it out. Videoman has recently compiled most (if not all) of the info about the PCE/TG hardware address space that has been posted on the hacklist. That file can be found here: http://www.tiac.net/users/videoman/world/download/TGHWMAP.TXT 2.2.3 Develo Translations This small section details what I've done and what is or will be available. For now, this is what's available from me: 8 CD-ROM BIOS functions CD_BOOT CD_FADE AD_RESET AD_READ AD_WRITE AD_PLAY AD_STOP AD_STAT Unfortunately, the other CD_* and AD_* functions are not in the Develo book, so it's up to us to hack at the CD-ROM BIOS to figure out exactly what they do. These functions can be found at: http://www-personal.umich.edu/~dfw/bios.txt Right now, I'm working on the backup memory functions and a partial I/O Map. ----------------------------------------------------------------------- ***************** C.3 Development * ***************** 3.0 What programs/games have been made for the PCE/TG so far? In a word: Nothing. This will change soon. 3.1 Emulators Right now, there are two PCE emulators: Jens' VPCE and David Michel's Magic Engine. Jens' emu is still in the development stage and isn't available yet, but Magic Engine is available now. 3.2 What's going on now? (Semi-recent History) 28 Jan 97 Right now, Joe is in the process of assembling the Greenhouses. I believe the ETA is late Feb. I've heard of two separate PCE/TG emulators being developed. I don't know how much is done or who's making them, but as more information about the PCE is made available, you can be sure that at least one emulator will surface. I'm in the process of translating some material from the Develo book: BIOS and Library functions. Dave recently re-posted some information about the music hardware and the Music Macro Language that supposed to make it much easier to compose music and sound FX for the PCE. 30 Jan 97 Soon after Dave S. reposted the music specs, Jens whipped up a Music Macro Language compiler. I haven't played around with it, but it's available on Joe's FTP site right now. 3 Feb 97 Contents of Super PCE Fan Deluxe CD added. Thanks to Bt for providing the information. 16 Feb 97 Added 'Some Question and Answers' section (2.0.2) and updated the '2.1.2 How/Where can I get a Develo book?' section. 14 Apr 97 I've finally gotten some free time from classes to update this FAQ somewhat. First, I've changed the name of the FAQ to the PCE/TG Resources Mini-FAQ. I thought the original name was confusing because this doesn't contain any 'hack' info in it. Added a short section on emulators (3.1) Added 'Develo Translations' section (2.2.3) ----------------------------------------------------------------------- Credits: I'd like to give a big thanks to: Joe LoCicero (for making the GreenHouse of course!) Bt Garner Dave Shadoff George Palamara for the information given to me directly or indirectly. Also thanks to anybody else I might have forgotten. I'm glad to be a part of both lists.