Jump to content

Alfred

Members
  • Posts

    949
  • Joined

  • Last visited

  • Days Won

    1

Alfred last won the day on September 30 2018

Alfred had the most liked content!

About Alfred

  • Birthday 05/25/1962

Profile Information

  • Gender
    Male
  • Location
    Elmwood, Ontario

Recent Profile Visitors

10,028 profile views

Alfred's Achievements

Dragonstomper

Dragonstomper (6/9)

701

Reputation

  1. I guess I missed the dates of the posts, so it has been translated properly and nothing currently needs doing.
  2. So the problem is nobody speaks both good Polish and English? I’m currently hospitalized for probably the next 3-5 months, waiting to see if I walk again. So time I have plenty of, but I don’t speak Polish so would need some translation help. I see what KMK means, that’s an awful machine translation that fjc posted.
  3. Yes, that's the macro facility ORCA supports. I didn't see any subscripts as in KEY=(key1,'key2',key3) but that looks to be a good description. The current manual is here: https://www.ibm.com/docs/en/SSENW6_1.6.0/pdf/asmr1024_pdf.pdf and chapters 6-9 discuss the macro facility.
  4. Has anyone used the ORCA assembler in the Apple world ? It's used as the sample assembler in the Eyes & Lichty book on the 65816 I believe. It doesn't seem to be too special, but I was intrigued to see that the macro facility is modeled after the S/370 macro facility, and the manual even mentions that this was deliberate. Is it any good ? The 65816 support seems spotty, it supports the instruction set, but doesn't allow for forcing the address mode, like ! meaning absolute long. I bought a USB stick with a bunch of source from the Apple world, and ORCA/M was part of it, with the source for the assembler, linker and the editor and interface to the Apple OS. It uses a lot of macros itself, which makes unwinding the code a bit more difficult, but it might not be too much work to port it to the Atari. I know AMAC was popular, so just wondering if there's any interest in another assembler with a powerful macro facility.
  5. Just checked. On Amazon.ca The400 is listed as $265 CDN. On Amazon.co.uk it shows as 70.82 EUR which is $104.17 based on today's exchange rate. I wasn't going to buy one, but for $100 it's pretty tempting. Long shipping time, but that's ok, it's been 43 years since the the 400 came out, what's another 30 days, lol.
  6. Can we get an example of how to use the banked ram option ? As in, load a small binary file to a 130 XE ram bank, and have some code that was loaded into main ram invoke a subroutine that resides in the code that was loaded into the bank. I've read the doc, but it's not clear how you actually define things correctly such that the mainline program can invoke a bank loaded subroutine.
  7. Updated disk. SFA8 and SFL8 may just be copies of SFAXE8 and SFLXE8. I ran into bugs with my copy, so made new ones, but it's not clear if these old diskette ones are still good. SFAX816 is the current 65816 version, only requires a machine with XE-style ram banks, not an actual 65816. Allows for eight character labels, 384 labels per assembly. If any segment is assigned an address above the 64K boundary, the linker will produce a binary that has a non-standard header, starting with $FCFC. See the pdf for more details, I updated some things, new directives etc. Alternating my time between this and my 65816 DOS. CURRENTSIXF.ATR NewSixf.pdf
  8. Change the LDX to any of $10,$20,$30,$40,$50,$60,$70. $00 is reserved for the E: device. CIO expects X to be loaded with the channel (0-7) number times 16.
  9. If this is from an Amstrad why do you think these village.bin files will execute on a different machine ? I would have thought you’d have to disassemble the original game and then write all the new Atari code. Or maybe you’ve done that already ?
  10. The dlist is wrong for one, HELLO2 needs to be converted from Atascii to video, say with an .SBYTE directive.
  11. Just trying to build the sieve.pas example. MP compiles it fine, but mads has issues: What file has the missing definitions ?
  12. It was the low/high byte separation. Normally all you see is a .WORD address. to see low/high there was surprising.
  13. Ok, so the PLA version works, but when I change the sequence back to the stack version: ; all regs 16 bit TSX LDA $0102,X STA CALLER I get $0000 in CALLER. $0100,X should be the next free stack byte, $0101,X is the PHP byte, so $0102,X ought to be the first byte of the return address. What am I missing here K, why am I not seeing $3C52 in the stack version ? edit: NM, in changing the code up I made a mistake about the stack. Both versions work correctly now.
  14. You're absolutely right. I figured it had to be my code but I wasn't seeing it. Thanks.
  15. It really is, I've left out the various SEP/REP and other instructions to simplify the example. The full code is: ABEND PHP SAVE CALLER STATE ; .ALLW ; ; SAVE ALL REGS AS WORD SIZE ; STA SAVEA STX SAVEX STY SAVEY ; ; PUT CALLER'S JSR ADDRESS INTO TERCOD. ; ; TSX X = STKREG. ; LDA $101,X LOW BYTE. PLA PULL CALLER RETURN STA CALLER PUT IN LSB POSITION. ; .ALLB ; PLA STA PSTATUS PROCESSOR STATUS ; PHK PLA STA CALLER+2 CALLER'S BANK ------------------------------------------ I was getting $0303 using the stack extract, so I changed it to the PLA version and it's still wonky. I need to play with it some more to try and understand what's going on with the stack pointer. Edit: yes, I understand the PHK isn't really the caller's bank, it just is in this case.
×
×
  • Create New...