Image Map Image Map
Page 1 of 8 12345 ... LastLast
Results 1 to 10 of 80

Thread: What are you guys using for retroprogramming?

  1. #1

    Default What are you guys using for retroprogramming?

    Hey guys,

    I feel like I don't hear enough about how other retro-programmers work, I was wondering what you guys were all using for your retro-programming needs.

    What hardware are you targeting?
    What kind of compiler/interpreter software do you use?
    Do you program on old-school systems themselves or do you use a modern editor?
    And (hopefully without starting a flame war) what language(s)?

    Right now, I'm writing for an old AST 286 PC machine.
    I use the OpenWatcom Compiler.
    I use a modern PC with Visual Studio as my editor.
    And I use C++ and some 8086 assembly, with a dash of a custom scripting language.

    How about you guys?
    Last edited by PgrAm; March 20th, 2018 at 09:20 AM.
    Currently working on new DOS game, Chuck Jones: Space Cop of the Future, Check out my Dev Blog. WARNING: contains rocket powered El Caminos

    Vintage Computers:
    Unitron Apple II clone, 2x Commodore Vic-20, Commodore 64, Commodore 128, Amiga 500, Macintosh Plus, Macintosh SE, AST Premium 286, 3 386sx PCs, Atari TT030

  2. #2
    Join Date
    Dec 2014
    Location
    The Netherlands
    Posts
    2,024

    Default

    I target various different platforms...

    MS-DOS, 808x-486:
    - OpenWatcom IDE on modern Windows for C/C++ and inline asm code
    - MASM on modern Windows
    - TASM on DOS
    - Notepad++ as editor
    - I test with DOSBox or real hardware (IBM 5150, PCjr, or generic 8088, 286 or 486 clone), depending on kinds of tests I want to do

    Windows 9x, 486-Pentium II-ish:
    - Visual C++ 6.0 on modern Windows for C, C++ and inline asm
    - MASM on modern Windows
    - DirectX

    Commodore 64:
    - Kick Assembler on modern Windows
    - Notepad++ as editor
    - VICE for most testing, use X1541 cable to transfer to disk on a real system for final tests

    Amiga (OCS, ECS, AGA):
    - SAS/C for C/C++ code
    - DevPac for 68k assembly
    - Notepad++ as editor
    - WinUAE for testing (I have some Amigas, but none of them work quite right at the moment, so real hardware is not currently an option)

    So in general, C/C++ is more or less a common factor. I also have some libraries that are re-usable between the different platforms.
    Commodore 64 is the odd one out: because of the platform limitations I use pure assembly only.
    For 8088 stuff I also do certain stuff in pure assembly.
    For slightly more high-end stuff I tend to use pure C with inline assembly, and for the most 'high-end' platforms I may use C++ features as well.

  3. #3
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    35,334
    Blog Entries
    18

    Default

    I use DOSEMU or WINE on 64-bit Ubuntu for most things retro. I also keep a copy of XP around on VirtualBox for more platform-demanding work. Most of my DOS programming is done in MASM 6.x or MSVC.

    Increasingly, that's getting to be smaller part of my work, however.

    Testing, on the other hand, is done on the real iron.

  4. #4

    Default

    Quote Originally Posted by Scali View Post
    Amiga (OCS, ECS, AGA):
    - SAS/C for C/C++ code
    - DevPac for 68k assembly
    - Notepad++ as editor
    - WinUAE for testing (I have some Amigas, but none of them work quite right at the moment, so real hardware is not currently an option)
    How is SAS/C in terms of standards compatibility? I've always wanted to try programming for my A500 but I never know which compiler to start with. Ideally I'd like to port one of my DOS games to Amiga
    Last edited by PgrAm; March 20th, 2018 at 11:51 AM.
    Currently working on new DOS game, Chuck Jones: Space Cop of the Future, Check out my Dev Blog. WARNING: contains rocket powered El Caminos

    Vintage Computers:
    Unitron Apple II clone, 2x Commodore Vic-20, Commodore 64, Commodore 128, Amiga 500, Macintosh Plus, Macintosh SE, AST Premium 286, 3 386sx PCs, Atari TT030

  5. #5

    Default

    NDP Fortran-77 4.4 (Microway), PharLap ASM386/386link, PharLap 8.0 DOS extenders for protected mode. I also use the Microway C/C++ v4.6 compiler. RM-Fortran-77 V2.43 and IBM Macro for realmode. Wordstar 6.0 for editing.
    PharLap uses up to 4GBytes of RAM. It's very fast on a Vortex DX running 800Mhz, even faster on an Core I3.

  6. #6
    Join Date
    Dec 2014
    Location
    The Netherlands
    Posts
    2,024

    Default

    Quote Originally Posted by PgrAm View Post
    How is SAS/C in terms of standards compatibility?
    As well as can be expected from any late 90s C/C++ environment I suppose.
    C++ is limited (things like namespaces and templates weren't fully supported yet). Regular C is okay, you get the usual ANSI C support. But don't expect 'modern' features such as stdint.h support. Of course, you can easily create your own header for it. That's what I did.
    If you want to run it on a real Amiga, having at least 2 MB is a requirement, and of course a hard disk.
    It runs fine in WinUAE though, so I just compile there, at warp speed

    SAS/C is a descendent of Lattice C++, as was Visual C++ before the .NET versions (so up to and including version 6.0). You'll find some of the same quirks in SAS/C as in MSVC++ 6.0.

  7. #7
    Join Date
    Aug 2006
    Location
    Chicagoland, Illinois, USA
    Posts
    6,881
    Blog Entries
    1

    Default

    My current project is a mixture of python in windows, Turbo Pascal, and Turbo Assembler. I do most of the coding in Windows via DOSBox and then send to a real x86 system for testing. For performance/timing-sensitive projects, I use TP and TA directly on the target hardware.
    Offering a bounty for:
    - A working Sanyo MBC-775 or Logabax 1600
    - Music Construction Set, IBM Music Feature edition (has red sticker on front stating IBM Music Feature)

  8. #8

    Default

    My targets are usually 8088 class machines - good old 16 bit DOS compatibles. I target the smaller machines figuring that if my code runs well there, it runs basically anywhere.

    I use two different environments:

    Turbo C++ for DOS 3.0 running on a 80386-40 machine. It gives me C, C++, and inline assembly which was enough to do all of my early mTCP work. The compiler can create 16 or 32 bit code. The level of C++ was quite primitive though; I generally use it as "C with classes" as it's basically a 1993 compiler.

    My preferred environment is Open Watcom 1.9 running on Windows, which gives me C, C++, and a good assembler. It cross compiles for DOS. For even more productivity I Cygwin to get a more Unix-like environment. The compiler has some decent optimizations; it makes Turbo C++ look primitive. But the run-time can be quite bloated. I test using DOSBox, VirtualBox, VMWare, and then I move the binaries onto real hardware for testing. This environment is much faster than on the original hardware, and I'm not limited to any one IDE's toolset.

    Sometimes I'll develop in gcc/g++ and then port to Watcom.


    Mike

  9. #9
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    35,334
    Blog Entries
    18

    Default

    At one time, DJGPP (DJ Delorie's version of 32-bit C++ for x86) was a hot tool. Anyone still use it?

  10. #10

    Default

    Quote Originally Posted by Chuck(G) View Post
    At one time, DJGPP (DJ Delorie's version of 32-bit C++ for x86) was a hot tool. Anyone still use it?
    It gets mentioned a lot of the FreeDOS lists and FreeDOS users generally gravitate to it because it frees them from segment handling. But it also excludes 8088 and 80286 class systems, so I'm not a fan.

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •