January 12th, 2015

The French Touch strikes back with “Scroll Scroll Scroll”

The French Touch strikes back with a fantastic multi scroll demo: text, GR and HGR scrolls in the same window.


Get the disk image @ http://www.ctrl-pomme-reset.fr/french-touch/

January 2nd, 2015

Open Apple #42: 2014 Year-End Roundtable, Eric Shepherd, Sarah W., Carrington Vanston

This month on Open Apple, we close out the year with our traditional Year-End Roundtable discussion. We’re joined by Eric ‘Sheppy’ Shepherd, Sarah W., and Carrington Vanston. We talk about alternate universes, our collective love of the IIgs, and Quinn takes cheap shots at Carrington. It’s the holidays, so Commodore users are given a respite. Well, a bit of a respite, anyway. Meanwhile, Sheppy solicits hatemail, Carrington calls shenanigans, and Sarah keeps everyone honest. Count the euphemisms! So many euphemisms!

As usual, we have lots of news to talk about as well. It’s been an amazing year for the Apple II, and we have new games, new hardware, and new video histories to share. I/O Silver is here, John Romero is there, and JSMESS is everywhere.

http://www.open-apple.net/2015/01/01/open-apple-42-december-2014-2014-year-end-roundtable-eric-shepherd-sarah-w-carrington-vanston/

December 22nd, 2014

Bill Buckels releases Bmp2DHR v1.0 ‘best Apple IIe graphics converter on the planet…’

After much tinkering and optimizing, Bill Buckels has released v1.0 of Bmp2DHR, a graphics converter for 8-bit Apple II computers. Check out Bill’s site for the impressive results!

December 22nd, 2014

Dagen Brock’s ‘Winter Demo’ for the Apple IIGS


SNOW

Get the disk image here

December 22nd, 2014

Classic Rogue ported to PLASMA by David Schmenk

To prove that PLASMA is capable of real algorithmic development, and looking forward to some Lawless Legends investigations, I built an intermediate project for your amusement. Harking back to the days of yore, when text terminals were the norm, I present: ROGUE.

Text based dungeon crawlers were quite popular in the ’70s and ’80s. One of the first for micro-computers was Telengaurd Dungeon, written by Dan Lawrence. He was the local computer hero at Von’s Computers where I worked as a Freshman at Purdue. He died just a few years ago from heart failure. This is a bit of a tribute to that early genre.

This version of ROGUE is somewhat different than others. It is very simple in most ways, but I have developed a (I think) unique visibility algorithm that runs extremely fast. Fast enough to run interpreted by the PLASMA VM on a 1 MHz 6502, and space efficient enough to allow for large (in the future) dungeons. The unique feature of this ROGUE is that lighting becomes critical and strategic. You are in dark catacombs, after all. You enter with a lit lamp, throwing off a circle of light. There are also torches throughout the catacombs that light up a small surrounding circle of light. Other items in the catacombs are mana (health+energy increase), a key, and gold. You will also encounter a number of enemies that will track you down to try and kill you. You will also encounter doors, locked doors, windows, water, and crevasses.

As you travel through the catacombs, you must watch your health, energy, and lamp oil levels. Once health reaches zero, you are dead. As energy reaches zero, your vision will narrow and you will no longer be able to run. When the lamp oil runs out, you will be cast into darkness. If you see any torches in your field of vision, you can navigate to them. Taking the torch will extinguish the torch and replenish some of your lamp oil. Note that as you travel through the catacombs, your map of what you have seen will automatically fill in. But, if you are in the dark, you cannot read your map. You must turn on your lamp or get next to a torch before you can read the map again. If you are in the dark and can’t see any torches in your field of vision, you are in complete darkness. It is easy to lose your bearings. As such, the absolute direction movements no longer work – you will end up in a random direction if you try. However, the relative turns (left/right) and forward/backward controls continue to work (*that* you can do in the dark).

Being in the dark can be advantages, however. All the enemies in the catacombs can see you if you are in light, just as you can see them. If you are in darkness, they can’t see you, and you can move around without being tracked. Don’t run into them! Also, don’t fall off a crevasse. You will hear certain noises giving you feedback on what is going on. A simple beep when you run into walls. A groan when an enemy moves towards you. A bleep when you pick an item up. Other noises when you fall over an edge or win a battle. These can be used strategically when moving in the dark.

Rogue_Keys

Whenever you and an enemy end up on the same tile, battle commences. As you win fights, your skill increases, improving your attack effectiveness. As you advance through the catacombs, the enemies become more powerful. You will need to replenish health and energy with mana. Don’t forget, the alternative to fighting is stealth in the darkness. During battle, you have the option to run. If you have low energy, you won’t get very far. Also, when fighting, you get turned around so you can’t depend on the direction you were facing before fighting. Running (‘Q’uick) will get you away from enemies but will use much more energy.

Download:
http://schmenk.is-a-geek.com/tarfiles/ROGUE.PO

There aren’t really any Easter Eggs in this game. But, being in the Christmas Season, try booting this disk image on an Apple /// (real or virtual) :-)
Enjoy,

Dave…

December 22nd, 2014

Roger Wagner’s ‘Assembly Lines: The Complete Book’ re-released under Creative Commons

Announced by Chris Torrence via Usenet Comp.Sys.Apple2

Assembly Lines: The Complete Book is now available! The book contains all 33 of Roger Wagner’s articles from Softalk magazine, as well as appendices on the 6502 instruction set, zero-page memory usage, and a beginner’s guide to using the Merlin Assembler. The book is currently available for 40% off on Lulu.com, and will be available at Amazon in a few weeks. Note: Roger Wagner has released the book under a Creative Commons NonCommercial-ShareAlike license, and I’m currently working on the eBook version.

http://www.lulu.com/shop/roger-wagner/assembly-lines-the-complete-book/hardcover/product-21959093.html

FYI, I uploaded disk images of the Assembly Lines programs to the Asimov website:

ftp://ftp.apple.asimov.net//pub/apple_II/images/programming/assembler/AssemblyLinesWagnerDOS1.DSK
ftp://ftp.apple.asimov.net//pub/apple_II/images/programming/assembler/AssemblyLinesWagnerDOS2.DSK
ftp://ftp.apple.asimov.net//pub/apple_II/images/programming/assembler/AssemblyLinesWagnerProDOS1.DSK
ftp://ftp.apple.asimov.net//pub/apple_II/images/programming/assembler/AssemblyLinesWagnerProDOS2.DSK

There are DOS and ProDOS versions. Disk1 contains the programs from chapters 1-17, while Disk2 contains the remaining chapters. Note that a few of the programs (in the DOS chapter) will only work in DOS, not ProDOS.

You can download a copy of the Merlin assembler for DOS at:
ftp://ftp.apple.asimov.net//pub/apple_II/images/programming/assembler/merlin/Merlin-8 v2.48 (DOS 3.3).dsk

And for ProDOS:
ftp://ftp.apple.asimov.net//pub/apple_II/images/programming/assembler/merlin/Merlin-8 v2.58 (ProDOS) Disk 1-2.dsk

Brief Table of Contents:

Preface
Introduction
1. Apple’s Architecture
2. The Monitor
3. Assemblers
4. Loops and Counters
5. Loops, Branches, COUT, and Paddles
6. I/O Using Monitor and Keyboards
7. Addressing Modes
8. Sound Generation
9. The Stack
10. Addition and Subtraction
11. DOS and Disk Access
12. Shift Operators and Logical Operators
13. I/O Routines
14. Reading and Writing Files on Disk
15. Special Programming Techniques
16. Passing Data from Applesoft BASIC
17. More Applesoft Data Passing
18. Applesoft Hi-Res Graphics
19. Calling Hi-Res Graphics Routines
20. Structure of the Hi-Res Display Screen
21. Hi-Res Plotting in Assembly
22. Even Better Hi-Res Plotting
23. Hi-Res Graphics SCRN Function
24. The Collision Counter, DRAW, XDRAW
25. Explosions and Special Effects
26. Passing Floating-Point Data
27. Floating-Point Math Routines
28. The BCD, or Binary Coded Decimal
29. Intercepting Output
30. Intercepting Input
31. Hi-Res Character Generator
32. Hi-Res Character Editor
33. The 65C02
Appendix A: Contest
Appendix B: Assembly Commands
Appendix C: 6502 Instruction Set
Appendix D: Monitor Subroutines
Appendix E: ASCII and Screen Charts
Appendix F: Zero-Page Memory Usage
Appendix G: Beginner’s Guide to Merlin
List of Programs
Directory Listing for Program Disks
Index
Quick Reference

December 22nd, 2014

Ivan Drucker releases ‘Magic Goto’

Announced by Ivan Drucker via Facebook

Magic Goto is now available, so you can program in Applesoft without ever having to think about line numbers, yielding better organized and much more readable code.

It lets you GOTO, GOSUB, or ONERR GOTO a label in a REM statement. For example, GOSUB “showMainMenu” will find the line containing REM “showMainMenu”.

Magic GOTO is self-contained in your Applesoft program and does not require any additional files to be loaded.

For those already familiar with Magic Gosub, this supersedes it, with support for GOTO and ONERR GOTO; better performance; and the ability to specify your label search either forwards or backwards, starting from the top, bottom, or current line (this allows you to reuse labels if you are programming in Structured Applesoft).

Have fun: http://ivanx.com/magicgoto

December 17th, 2014

Andy McFadden updates CiderPress and NuLib2

After several years of quiet bit-rot, CiderPress and NuLib2 have received a new coat of paint.

Both projects are now in git repositories on github.com, migrated from their CVS repositories on sourceforge.net. NuLib2 still lives at http://nulib.com/, with sources in http://github.com/fadden/nulib2. CiderPress has a new github-hosted domain, http://a2ciderpress.com/, and its sources are at http://github.com/fadden/ciderpress.

The updates to NuLib2 were fairly minor — some changes to the build and config scripts, mostly to get it to work with Visual Studio 2013, and a few tweaks. The new version is v2.2.2.

The updates to CiderPress were more significant. It now requires WinXP or later — Win98/ME/2K will not work — so I’ve bumped to the next major version, v4.0.0. This is still a work in progress, but it seems stable and offers some usability improvements over 3.x, so I’m releasing it as a “development” version (4.0.0d1) for people to play with.

A summary of changes, starting with the user-visible stuff:

(1) File+folder selection dialogs fixed

Windows has standard dialogs for selecting files. With Vista it even gained a standard dialog for selecting a folder. Selecting a collection of both files and folders is still very difficult. The previous release of CiderPress used “old-style” dialogs, the new release uses “explorer-style” dialogs. Other file selection dialogs, such as for opening an archive, use the current “vista-style” dialogs. It would be more visually appealing if all the dialogs looked the same, but vista-style dialogs don’t exist on WinXP.

The most significant impact of all this is that the Accept button in the Add Files dialog should no longer go AWOL.

(2) Help system updated

CiderPress used WinHelp, but recent versions of Windows dropped the WinHelp viewer, requiring a separate download. To complicate matters further, the help file was developed with HelpMatic Pro, which used a proprietary format and didn’t provide a way to get at the “raw” help data. I decompiled the WinHelp output file and used HelpScribble to convert it to HtmlHelp. The HTML sources are now checked into the source tree.

It appears that HtmlHelp is on its way out, so this is probably just kicking the can a bit farther down the road, but converting the help file from a proprietary format to HTML is a useful first step.

(3) File type associations fixed, sort of

You’ve probably seen installers that ask whether you want to install for all users or the current user. In recent versions of Windows, the registry keys for the machine have tighter access controls than the keys for the current user. This caused the code that handled file type associations by manipulating HKEY_CLASSES_ROOT to break.

The correct way to deal with this is to let the installer set and clear the associations, and use the Windows control panel to make any changes. The DeployMaster-based installer currently has a UI limitation that prevents it from showing all 18 file types that CiderPress handles, which means it may not give you an opportunity to prevent CiderPress from taking charge of a file extension.

So I’m keeping the file type association code in CiderPress, but now it only affects the current user rather than all users on the machine. The current-user entries take priority over the local-machine entries, so it generally works, but it may fail to recognize a previous entry that only exists in the local-machine part of the registry.

(4) Build system changes

CiderPress 3.x required Visual Studio 6, which was released in 1998. Getting VS6 installed on Windows 7 was something of an exercise, and I don’t expect that to get easier. My goal is to keep CiderPress going for another 10 years, so I updated everything to work with Visual Studio 2013.

This required a pretty significant revamp of the project/solution files, and I took the opportunity to rearrange the output directory layout a bit. The automatic conversion of the project files left a bit to be desired, but I think I’ve hammered out most of the weirdness.

In the past, NufxLib and zlib were built externally, and included as pre-built libraries. This was annoying, so now the CiderPress project includes source code snapshots, and just builds them from scratch.

Building for WinXP in Visual Studio 2013 requires selecting a WinXP-compatibility Platform Toolset, and including a couple of hefty redistributable libraries in the install package. Because of the popularity of WinXP, I went ahead and made these changes. If WinXP ceases to be interesting, we can shave a few MB off the size of the installer.

(5) UNICODE

Many Windows APIs come in two flavors. When you call SomeFunction, a header file remaps it to SomeFunctionA or SomeFunctionW, depending on whether you have “MBCS” or “UNICODE” defined. Use of the older ANSI / Multi-Byte Character Set APIs are discouraged in favor of the UNICODE / wide-character APIs.

CiderPress v3.x used MBCS. The new release uses UNICODE, which meant changing a lot of code to use wide-character UTF-16 strings for the UI and filenames.

The diskimg and nufxlib libraries still work with narrow-string filenames. This makes some sense for names of files on Apple II disk images, but will need to be fixed for the names of files on local disk. The code made some effort at separating “storage names” from Windows pathnames, but not nearly enough. (Nine years of Java has improved my understanding of character set issues.)

(The use of Unicode strings creates an opportunity for improvement: we can use “Mac OS Roman” characters. The IIgs used the Mac definitions for high-ASCII values, and there’s an official Unicode definition for each value. The current code bludgeons Mac OS Roman into Windows CP1252, which can screw up filenames on HFS volumes and in ShrinkIt archives created from HFS data.)

(6) Source code and documentation improvements

Various minor improvements have been made to the source code. Visual Studio discovered variadic macros in 2005, so the debug log macros have been redone. Variables with specific bit widths now use appropriate types, e.g. “uint8_t” replaces “unsigned char”.

The README text has been ported to markdown for easy viewing on github. The diskimg README was expanded, and a Linux build README was added.

The current state of testing can be summed up:

+ All basic features have been exercised on Win7. Some light testing has been done on WinXP.
+ CF cards and HFS CD-ROMs work (tested on Win7).
– No testing on Vista or Win8, as I have no machines running those.
– No testing of SCSI-attached devices, due to lack of SCSI card. Win7 disallows access to the boot volume, not sure what it will do with an external drive.
– No testing of 3.5″ floppies, due to lack of 3.5″ floppy drive.

Because the testing is a bit thin, and because I’m not done adding features, this is a “development” release. v3.0.1 is still the official “stable” release. From a user perspective, 4.0.0d1 is feature-equivalent to v3.0.1.

Win32 installers for the various releases can be found on http://a2ciderpress.com/.

NOTE: the 4.0.0d1 executable has debug logging enabled. It will try to create a file called “C:\Src\cplog.txt”. If it succeeds, you’ll get a running commentary of CiderPress activity. This can be handy if something fails.

November 29th, 2014

Kevin Smallwood to release GBBSPro under the GPL

Kevin Smallwood announced in the Facebook Apple II Enthusiasts forum that he intends to release the GBBSPro bulletin board system (along with ACOS and other related products) under the GPL. Kevin is the current owner of the GBBSPro product.

To my fellow Apple // fans. Tony Diaz and I are going to GPL the GbbsPro source code. Stay tuned. -Kevin Smallwood

Tony Diaz has a huge collection of GBBSPro/ACOS material, so in tandem, they will be releasing a literal treasure trove of Apple II telecommunications history and source code. We could even see a resurgence of interest in good ol’ fashioned Apple II BBS’ing, as several people have expressed their desire to update the code to support telnet access.

November 25th, 2014

David Schmenk releases updated PLASMA

PLASMA for the Holidays

(For all you programmer types looking to escape from the relatives this week)
Just like last year, here is an update to the PLASMA sandbox (an Apple II IDE to play around with PLASMA). It is (sort of) self-documenting progression through some PLASMA example code. PLASMA has grown up a lot since last year. With much input from actual users, it now resembles a real language. It has also sped up quite a bit, about 25-30% over the previous version. By speeding up the VM, I was able to remove the native compiled routines, which sped it up but at the expense of a large increase in memory usage. So now, all the examples can be loaded and compiled in the sandbox. You can download the disk image from GitHub here:
https://github.com/dschmenk/PLASMA/blob/master/SANDBOX.PO
Don’t forget to check out the documentation on GitHub as well:
https://github.com/dschmenk/PLASMA/blob/master/doc/User%20Manual.md
Any and all feedback appreciated. Enjoy,
Dave…

« Previous Page« Previous Entries | Next Entries »Next Page »