Jump to content


+AtariAge Subscriber
  • Content Count

  • Joined

  • Last visited

  • Days Won


JAC! last won the day on December 17 2017

JAC! had the most liked content!

Community Reputation

2,197 Excellent


About JAC!

Contact / Social Media

Profile Information

  • Custom Status
    Always looking for GFX and MSX for my demos
  • Gender
  • Location
    Lebach, Germany
  • Interests

Recent Profile Visitors

22,388 profile views
  1. Hi, Just checkout this pinned thread. (1 Altirra / 2 Altirra+DIR2ATR / 3 WUDSN/MADS/MAD PASCAL)
  2. Well, that would apply to basically everything on AtariWiki. Also I would not want such code (copyright...) to be under my personal git. We consider AtariWiki itself as the right central place for preservation.
  3. Update: In the daily build, the Hex Editor is now included as separate plugin. If I did it right, it will continue to work as before, so please report any unexpected change in the Hex Editor like missing texts etc.. As a new feature, the hex editor now also recognizes IFF files and displays their structure accordingly.
  4. Well, but having so many different cartridge versions (even though the easy path for the currently build) should not be the target in my opinion. Having a single version which lets you switch input devices on the fly would be much more convient and the with compression, that should be easy to achieve. And with the additional space gained, you could even have the option to install one or more R: drivers from Platoterm without having to load from a DOS.
  5. I've put togther this as ready to run example for deflate/inflate compressing and starting a single-segment XEX starting at $2000 into a 16K plain ROM. https://www.wudsn.com/productions/atari800/platotermrom/platotermrom.zip ; ; @com.wudsn.ide.asm.outputfileextension=.bin ; ; inflate is 508 bytes of code and constants ; inflate_data is 765 bytes of uninitialized data ; inflate_zp is 10 bytes on page zero inflate_zp = $f0 target = $2000 org $7800 .use main.inflate icl "Inflate-Data.asm" org $8000 opt h-f+ .proc main mwa #source inflate_zp mwa #target-6 inflate_zp+2 jsr inflate jmp target .proc inflate icl "Inflate.asm" .endp .local source ins "Platoterm.xex.deflate" .endl .echo "Original executable file is ", .filesize "Platoterm.xex", " bytes" .echo "Deflated executable file is ", .len source, " bytes" .endp org $bff9 init rts .word main .byte 0,4 .word init
  6. Hi Thom, I don't have time to actually look at the source, but the most general way of solving the problem would be to compress the content on the ROM and unpack it into the RAM. This will work on any platform and many cartridge types allow disabling the cart after that, so you don't even lose RAM. A good lower estimate is ZIP, so PLATOTERM-1.2-Atari-cart-No-Mouse-FASTIO.rom (16k) becomes 10.2k zipped, plenty of space for unzip and more code. - Peter.
  7. Great to see you trying this combination. And yes, using makefile is the recommended way for anything that requires thinks like linking, disk image creation incl. external ressource etc.. I plan to add better support for that via new @nnotation, so you don't have to configure them as external tools in Eclipse. And one fine day I'll add CA65 syntax... 1 day user and already gives excellent technical advice before I have the chance, ace!
  8. Finally with the help of a logic tester and oclilosope I was able to get it working. Here's what was wrong: - the R1 and R2 that were pre-populated on the board were swapped. - Rx for LUM2 must be 100 Ohm, not 160 Ohm get correct results for the brightnesses. - One LUM output of the TIA was totally broken and one "only" half. What a trip... but now it finally works. I description in the manual which resistor is is supposed to have which value/purpose would really have helped.
  9. The archive "PAC-MAN_Source_Code_Macro_Assembler.zip" contains the original source code in original format. In that set of files, one was misssing. That file named "PACDAT1.ASM" contained only charset and display list data, not code and was restored from the binary. So if you happen to have an original Atari DEV environment you should be able to verify it 🙂 ; MISSING LABELS & DATA PACCHR .byte $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$3C,$3C,$00,$00,$00 .byte $3C,$3C,$FF,$FF,$FF,$FF,$3C,$3C,$00,$00,$01,$04,$04,$04,$04,$04 .byte $00,$00,$40,$10,$10,$10,$10,$10,$10,$10,$10,$10,$10,$40,$00,$00 .byte $04,$04,$04,$04,$04,$01,$00,$00,$00,$00,$55,$00,$00,$50,$04,$04 .byte $00,$00,$40,$10,$10,$40,$00,$00,$00,$00,$55,$00,$00,$05,$10,$10 .byte $00,$00,$01,$04,$04,$01,$00,$00,$00,$00,$FF,$00,$00,$00,$00,$00 .byte $00,$00,$55,$00,$00,$55,$00,$00,$04,$04,$04,$04,$04,$04,$04,$04 .byte $00,$00,$55,$00,$00,$00,$00,$00,$10,$10,$10,$10,$10,$10,$10,$10 .byte $00,$00,$00,$00,$00,$55,$00,$00,$00,$00,$00,$00,$01,$01,$01,$01 .byte $01,$01,$01,$01,$00,$00,$00,$00,$01,$01,$01,$01,$01,$01,$01,$01 .byte $40,$40,$40,$40,$40,$40,$40,$40,$00,$00,$55,$00,$00,$50,$04,$04 .byte $00,$00,$55,$00,$00,$05,$10,$10,$04,$04,$50,$00,$00,$55,$00,$00 .byte $10,$10,$05,$00,$00,$55,$00,$00,$10,$10,$05,$00,$00,$05,$10,$10 .byte $04,$04,$50,$00,$00,$50,$04,$04,$3C,$FF,$3F,$0F,$3F,$FF,$3C,$00 .byte $00,$00,$15,$40,$00,$05,$10,$10,$10,$10,$05,$00,$40,$15,$00,$00 .byte $00,$00,$54,$01,$00,$50,$04,$04,$04,$04,$50,$00,$01,$54,$00,$00 .byte $00,$00,$00,$00,$40,$40,$40,$40,$40,$40,$40,$40,$00,$00,$00,$00 .byte $00,$3F,$3C,$3C,$3F,$3C,$3C,$00,$00,$F0,$3C,$3C,$F0,$F0,$3C,$00 .byte $00,$FF,$F0,$FF,$F0,$F0,$FF,$00,$00,$C0,$03,$0F,$0F,$0F,$CF,$00 .byte $00,$F0,$FC,$0F,$0F,$FF,$0F,$00,$00,$3F,$3C,$3C,$3C,$3C,$3F,$00 .byte $00,$C0,$F0,$3C,$3C,$F0,$C0,$00,$00,$F0,$F0,$3F,$0F,$0F,$0F,$00 .byte $00,$F3,$F3,$C3,$00,$03,$03,$00,$00,$C0,$C0,$C0,$00,$C0,$C0,$00 .byte $00,$3F,$F0,$F0,$F3,$F0,$3F,$00,$00,$F0,$00,$03,$F3,$F3,$F3,$00 .byte $00,$3C,$FF,$C3,$C3,$FF,$C3,$00,$00,$0F,$0F,$CF,$CF,$CF,$CF,$00 .byte $00,$03,$CF,$FF,$33,$03,$03,$00,$00,$CF,$CF,$CF,$CF,$CF,$CF,$00 .byte $00,$FC,$00,$F0,$00,$00,$FC,$00,$00,$00,$03,$03,$03,$03,$00,$00 .byte $00,$FF,$C3,$C3,$C3,$C3,$FF,$00,$00,$0F,$CF,$CF,$CF,$C3,$00,$00 .byte $00,$3C,$3C,$3C,$3C,$F0,$C0,$00,$00,$FF,$F0,$FF,$F0,$F0,$FF,$00 .byte $00,$CF,$0F,$0F,$0F,$0F,$CF,$00,$00,$FC,$0F,$0F,$FC,$3C,$0F,$00 .byte $00,$03,$0C,$2A,$2A,$2A,$3A,$2A,$30,$F0,$30,$A8,$A8,$E8,$A8,$00 .byte $03,$0F,$2A,$2E,$2A,$2B,$0A,$02,$00,$C0,$A0,$E0,$A0,$A0,$80,$00 .byte $02,$02,$0F,$3F,$3F,$3F,$3F,$0F,$00,$00,$C0,$F0,$F0,$F0,$F0,$C0 .byte $03,$0A,$2A,$2A,$2A,$2A,$2A,$0A,$00,$80,$A0,$A0,$E0,$E0,$A0,$80 .byte $03,$03,$0A,$2A,$2A,$2A,$2A,$0A,$00,$00,$80,$A0,$A0,$A0,$A0,$80 .byte $03,$03,$05,$15,$15,$15,$15,$05,$00,$00,$40,$50,$50,$50,$50,$40 .byte $22,$22,$22,$22,$22,$A2,$82,$82,$20,$20,$20,$20,$20,$28,$08,$08 .byte $11,$11,$11,$11,$11,$51,$41,$41,$10,$10,$10,$10,$10,$14,$04,$04 .byte $03,$0D,$3F,$3F,$3F,$3A,$2B,$0A,$00,$C0,$F0,$F0,$F0,$B0,$A0,$80 .byte $0A,$08,$0A,$03,$03,$03,$03,$03,$A0,$20,$A0,$C0,$F0,$C0,$F0,$C0 .byte $00,$03,$00,$00,$00,$00,$03,$00,$C0,$C3,$C3,$C3,$C3,$C3,$F0,$00 .byte $3F,$00,$00,$03,$00,$30,$0F,$00,$F0,$33,$C3,$C3,$33,$33,$C0,$00 .byte $3F,$30,$3F,$00,$00,$30,$0F,$00,$F0,$03,$C3,$33,$33,$33,$C0,$00 .byte $3F,$00,$00,$03,$0C,$0C,$0C,$00,$F0,$33,$C3,$03,$03,$03,$00,$00 .byte $03,$0F,$03,$03,$03,$03,$0F,$00,$03,$0C,$0C,$0C,$0C,$0C,$C3,$00 .byte $3F,$C0,$00,$0F,$30,$C0,$FF,$00,$03,$CC,$CC,$0C,$0C,$0C,$C3,$00 .byte $FF,$00,$03,$0F,$00,$C0,$3F,$00,$C3,$CC,$0C,$0C,$CC,$CC,$03,$00 .byte $FF,$C0,$FF,$00,$00,$C0,$3F,$00,$C3,$0C,$0C,$CC,$CC,$CC,$03,$00 .byte $C0,$33,$33,$33,$33,$33,$C0,$00,$F0,$0C,$0C,$0C,$0C,$0C,$F0,$00 .byte $3C,$C3,$C3,$C3,$C3,$C3,$3C,$00,$00,$00,$55,$00,$00,$54,$01,$01 .byte $01,$01,$54,$00,$00,$55,$00,$00,$00,$00,$55,$00,$00,$15,$40,$40 .byte $40,$40,$15,$00,$00,$55,$00,$00,$00,$AA,$A0,$A0,$AA,$A0,$A0,$00 .byte $00,$82,$A2,$A2,$82,$02,$02,$00,$00,$80,$80,$80,$80,$80,$AA,$00 .byte $00,$02,$0A,$28,$28,$2A,$28,$00,$00,$02,$82,$A0,$A0,$A0,$A0,$00 .byte $00,$82,$82,$AA,$28,$28,$28,$00,$00,$8A,$8A,$0A,$0A,$0A,$0A,$00 .byte $00,$A8,$00,$A0,$00,$00,$A8,$00,$00,$AA,$A0,$A0,$AA,$A2,$A0,$00 .byte $00,$80,$A0,$A0,$80,$80,$A0,$00,$00,$00,$02,$00,$00,$00,$0A,$00 .byte $00,$A0,$A0,$A0,$A0,$A0,$AA,$00,$00,$02,$0A,$00,$00,$02,$0A,$00 .byte $00,$A8,$0A,$28,$A0,$80,$AA,$00 DATMAZ .byte $00,$11,$1C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C .byte $0C,$0C,$0C,$15,$16,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C .byte $0C,$0C,$0C,$0C,$0C,$1E,$20,$00,$00,$13,$0F,$01,$01,$01,$01,$01 .byte $01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$0D,$0F,$01,$01,$01 .byte $01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$0D,$14,$00 .byte $00,$13,$0F,$01,$03,$0E,$0E,$0E,$04,$01,$03,$0E,$0E,$0E,$0E,$0E .byte $0E,$04,$01,$0D,$0F,$01,$03,$0E,$0E,$0E,$0E,$0E,$0E,$04,$01,$03 .byte $0E,$0E,$0E,$04,$01,$0D,$14,$00,$00,$13,$0F,$02,$06,$10,$10,$10 .byte $05,$01,$06,$10,$10,$10,$10,$10,$10,$05,$01,$06,$05,$01,$06,$10 .byte $10,$10,$10,$10,$10,$05,$01,$06,$10,$10,$10,$05,$02,$0D,$14,$00 .byte $00,$13,$0F,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01 .byte $01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01 .byte $01,$01,$01,$01,$01,$0D,$14,$00,$00,$13,$0F,$01,$0A,$0C,$0C,$0C .byte $08,$01,$03,$0E,$04,$01,$0A,$0C,$0C,$0C,$0C,$07,$09,$0C,$0C,$0C .byte $0C,$08,$01,$03,$0E,$04,$01,$0A,$0C,$0C,$0C,$08,$01,$0D,$14,$00 .byte $00,$13,$0F,$01,$01,$01,$01,$01,$01,$01,$0D,$00,$0F,$01,$01,$01 .byte $01,$01,$01,$0D,$0F,$01,$01,$01,$01,$01,$01,$0D,$00,$0F,$01,$01 .byte $01,$01,$01,$01,$01,$0D,$14,$00,$00,$12,$1D,$0C,$0C,$0C,$0C,$61 .byte $04,$01,$0D,$00,$19,$0C,$0C,$0C,$0C,$08,$00,$06,$05,$00,$0A,$0C .byte $0C,$0C,$0C,$1A,$00,$0F,$01,$03,$63,$0C,$0C,$0C,$0C,$1F,$21,$00 .byte $00,$00,$00,$00,$00,$00,$00,$13,$0F,$01,$0D,$00,$0F,$00,$00,$00 .byte $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0D,$00,$0F,$01,$0D .byte $14,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0C,$0C,$0C,$0C,$0C,$62 .byte $05,$01,$06,$10,$05,$00,$03,$0E,$0E,$0E,$0E,$0B,$0B,$0E,$0E,$0E .byte $0E,$04,$00,$06,$10,$05,$01,$06,$64,$0C,$0C,$0C,$0C,$0C,$00,$00 .byte $00,$00,$00,$00,$00,$00,$00,$00,$00,$01,$00,$00,$00,$00,$0D,$00 .byte $00,$00,$00,$00,$00,$00,$00,$00,$00,$0F,$00,$00,$00,$00,$01,$00 .byte $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0C,$0C,$0C,$0C,$0C,$61 .byte $04,$01,$03,$0E,$04,$00,$06,$10,$10,$10,$10,$10,$10,$10,$10,$10 .byte $10,$05,$00,$03,$0E,$04,$01,$03,$63,$0C,$0C,$0C,$0C,$0C,$00,$00 .byte $00,$00,$00,$00,$00,$00,$00,$13,$0F,$01,$0D,$00,$0F,$00,$00,$00 .byte $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$0D,$00,$0F,$01,$0D .byte $14,$00,$00,$00,$00,$00,$00,$00,$00,$11,$1C,$0C,$0C,$0C,$0C,$62 .byte $05,$01,$06,$10,$05,$00,$0A,$0C,$0C,$0C,$0C,$07,$09,$0C,$0C,$0C .byte $0C,$08,$00,$06,$10,$05,$01,$06,$64,$0C,$0C,$0C,$0C,$1E,$20,$00 .byte $00,$13,$0F,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01 .byte $01,$01,$01,$0D,$0F,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01 .byte $01,$01,$01,$01,$01,$0D,$14,$00,$00,$13,$0F,$01,$0A,$0C,$0C,$15 .byte $04,$01,$0A,$0C,$0C,$0C,$0C,$0C,$0C,$08,$01,$06,$05,$01,$0A,$0C .byte $0C,$0C,$0C,$0C,$0C,$08,$01,$03,$16,$0C,$0C,$08,$01,$0D,$14,$00 .byte $00,$13,$0F,$02,$01,$01,$01,$0D,$0F,$01,$01,$01,$01,$01,$01,$01 .byte $01,$01,$01,$00,$00,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$0D .byte $0F,$01,$01,$01,$02,$0D,$14,$00,$00,$13,$19,$0C,$0C,$08,$01,$06 .byte $05,$01,$03,$0E,$04,$01,$0A,$0C,$0C,$0C,$0C,$07,$09,$0C,$0C,$0C .byte $0C,$08,$01,$03,$0E,$04,$01,$06,$05,$01,$0A,$0C,$0C,$1A,$14,$00 .byte $00,$13,$0F,$01,$01,$01,$01,$01,$01,$01,$0D,$00,$0F,$01,$01,$01 .byte $01,$01,$01,$0D,$0F,$01,$01,$01,$01,$01,$01,$0D,$00,$0F,$01,$01 .byte $01,$01,$01,$01,$01,$0D,$14,$00,$00,$13,$0F,$01,$0A,$0C,$0C,$0C .byte $0C,$0C,$17,$10,$18,$0C,$0C,$0C,$0C,$08,$01,$06,$05,$01,$0A,$0C .byte $0C,$0C,$0C,$17,$10,$18,$0C,$0C,$0C,$0C,$0C,$08,$01,$0D,$14,$00 .byte $00,$13,$0F,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01 .byte $01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01,$01 .byte $01,$01,$01,$01,$01,$0D,$14,$00,$00,$12,$1D,$0C,$0C,$0C,$0C,$0C .byte $0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C .byte $0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$0C,$1F,$21,$00 .byte $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 .byte $00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00,$00 .byte $00,$00,$00,$00,$00,$00,$00,$00 ODLIST .byte $70,$70,$42,$00,$28,$02,$C6,$00,$24,$07,$07,$86,$06,$06,$06,$06 .byte $86,$04,$86,$06,$06,$06,$06,$06,$06,$06,$06,$86,$44,$70,$17,$41, a(ODLIST) DLIST .byte $70,$70,$42,$00,$28,$82,$C4,$00,$14,$04,$04,$04,$04,$04,$04,$04 .byte $04,$04,$84,$04,$04,$04,$04,$04,$04,$04,$04,$04,$84,$84,$04,$F0 .byte $41,a(DLIST) ADLIST .byte $70,$70,$C2,$00,$28,$02,$46,$00,$30,$06,$86,$06,$06,$06,$06,$06 .byte $06,$06,$86,$06,$06,$06,$86,$06,$06,$06,$06,$06,$86,$06,$44,$70 .byte $17,$41,a(ADLIST) NULLDL .byte $70,$70,$70,$41,a(NULLDL) INTDLC .byte $70,$70,$70,$42,$00,$28,$02,$F0,$70,$70,$70,$70,$70,$70,$70,$70 .byte $70,$54,$00,$2C,$54,$50,$2C,$54,$A0,$2C,$41,$80,$06 The MADS version of the code is a 1:1 syntax format conversion of the original code that compiles to the exact same result at the exact same locations. No logic or semantic changes have been applied. The differences in the Atari/DataSoft/etc. versions can be found in the source by looking for the "VERSION" string. By specifying -DVERSION=1 to 4 you can control which of the variants is built. All variants are 100% identical to the respective original (unpacked, decoded) binary.
  10. Important Announcement for WUDSN 1.7.1 After 7 years of successfully maintaining compatibility with Java 1.6/1.7, all Eclipse version and 32-bit architectures an era ends. Support by fixes in Java and Eclipse is only available for Java 1.8 and Eclipse 4.10 and later and both do not support 32-bit development environments anymore. Understandable in a time where every mobile phone has an 8-core 64-bit architecture. Therefore WUDSN IDE 1.7.1 requires Java 1.8, Eclipse 4.12 and a 64-bit operating system as a minimum. The upcoming 1.7.1 is intentionally a minor version update, so there are no major feature changes and people who cannot migrate to the new environment can, of course, download the older version from the Releases page. Starting from now (2019-08-31 15:00 CET), the daily build (https://www.wudsn.com/update/daily) is the WUDSN IDE 1.7.1 preview. You have to use Java 1.8 or newer and Eclipse 2019-06 / Eclipse 4.12 Platform Runtime Binary or newer. Pascal: Source code editor with the first version of syntax highlighting for Pascal Source Files (".pas") that can be used with Mad Pascal. Fixes: Online help now works again thanks to the update to Java 1.8 and newer Eclipse version. Atari TrueType fonts by Mark Schmelzenbach updated to version 1.2, which fixes the look of the capital "J". If the "Skip All Breakpoints" option is active, breakpoints are now correctly skipped.
  11. Thanks, I knew they exist, but I didn't have the time to look at them yet. My focus is getting my game to work. I just tried to implement a minimal MP syntax highlighting that can be integrated in my WUDSN IDE using the new Eclipse 4.7 generic editor. And I am very statisfied with the (not yet 100% of course) result from just around 80 lines of Java code.
  12. Is there a way to force it "semi manually" using the .atdbg file? or the command line? EDIT: I changed to 3.20 final and activate the 3 options in the preferences. Programmer mode, so to say. Unforatuntely even with this settings it does not work when booting an ATR. Would be great if that worked in a future version. Booting an ATR should not be handled too differently from loading an XEX or Powering.up a cartridge, if possible.
  13. @tebe: Mad Pascal is REALLY cool. I love static type checking, boolean and enums. My ACTION! project is now converted and basically runs. I have added support for Mad Pascal in WUDSN to the todo list 🙂 Can you please add the orignal File/line/code in the ".a65" file as comment? Otherwise debugging is really hard.
  14. Hi, the are there, they are called BlockRead/BlockWrite. You can use them like BGET/BPUT in Turbobasic. var file f; begin Assign(result, 'D1:EXAMPLE.TXT'); Reset(f,1); Blockread(f,target,length); if (IOResult>=127) then beep; Close(f); there are more detailed example in the MP download. That is how you compile the same on a PC using "FPC.EXE". On the Atari use mp.exe and then mads.exe on the result of mp.exe.
  15. Hi Phaeron, I cannot manage to get Altirra 3.20-test24 to load the ".lst" and ".lab" file automatically upon start/entering the debugger when I boot an ".atr". I works when I load the both files manually via ".loadsym". Is that a limitation of using an ATR? Regards, Peter.
  • Create New...