Jump to content

Eagle

Members
  • Posts

    641
  • Joined

  • Last visited

  • Days Won

    4

Everything posted by Eagle

  1. https://github.com/7800-devtools/a78_asm_header/blob/main/a78header.asm
  2. I think Covox is using IRQ, so you may need set IRQ in header.
  3. And it's running SN cart demo. Testing and adding all new features will take some time but will be lot of fun sn2.mp4
  4. Transparency "fix" is base on how Maria is writing to LineRAM (we doubled LineRAM) You are asking for changing reading. In 320B mode you already have 2 bits per pixel in gfx data, just Maria can't write this to LineRam. 320C is different and possible for MariaECi but only because Maria it's done from scratch in FPGA and have no limitations like normal Maria. MariaECI can read up to 500 bytes per line (normal Maria about 130 max) For 320C fix you will have to double amount of data. With transparency "fix" you can put 2 sprites 320C on top of each other. ps. Just came to me that with doubled LineRAM we probably could try mix 160 and 320 modes 🤔 🤯 In 5 bytes header we could use one spare bit to change CTRL read mode on the fly I need ask smarter people than me if this is possible edit: hmmm we could use bit 0 for mix mode but also use bit 1 for 320px sprite movement
  5. Bit 4 in DLL entry will enable Extended Hires mode for MariaECI, also DLL entry will take 7 bytes give some extra features like for example 32 bit address for Maria gfx bank SN² cart will not support this but 7800GD could easily and it's up to @SainT. When we finish testing SN² cart and MariaECI I will share all details. Yes. Me too. But this is for YM2612. For example we have YM2151 for few years for now and no one is using. I did few demos, Paul and Mike did some players but Midi style. Playing YM2151 vgm it can take up to 500 bytes per frame with 32 cycles delay between writes. No chance to get very good music in game. All arcades and other machines with YM2151 have extra CPU Z80 for just playing the music! I don't want Z80 so we will use FPGA to play VGM but you don't have to use it. Instead of YM2151 we should use YM2413, but someone decide long time ago to put YM2151 in XM module 🤷‍♂️ I was planning to put YM2413 on SN cart and even I sent few chips to Rafal (BTW TailChao was planning use YM2413 for Rikki but he was afraid of fake chips) But we have now SN² cart
  6. Eagle

    7800 GD

    It's support only mapper. Rikki&Vikki music 500KB 7800GD music 90MB
  7. SN cart "only" use banking for $Axxx, $Cxxx,$Dxxx and $Exxx, new cart will do $8xxx,$9xxx,$Bxxx as well 8KB banking for RAM FPGA player for VGM (just give him address in rom and will play) Pointers - you can read any byte in rom without changing banks Covox DMA SN76489 stereo, Pokey, YM2612 and more It's compatible with SN cart and you can send rom just using USB-UART cable Also documentation will be publish so any one can make own cart. I'm not gonna lie this is very demoscene oriented cart but in good hand will help make amazing games.
  8. SN² cart is on his way, but MiSTer core for old SN cart is almost ready (base on @Kitrinx core but our version will be only for devs so far) New SN cart for 7800 will support features from MariaECI and help develop on both platforms. ps. sorry, no sound because my video grabber for some reason stopped recording audio 🤷‍♂️ 2023-08-10 18-02-08.mp4
  9. Ok. I will try to use $480 Thanks.
  10. I need 6 bytes for each pointer, MariaEci use 4 pointers but I'm thinking to use only 2 for 7800 $47x it's for XM module (I think only emulators are using) $46x for YM family $43x it's for Covox but also for 2 SN chips and Covox DMA (we had to change MiSTer code because covox is repeated up to $43F) I can try use $480 but imho it's better to utilize existing space.
  11. Thanks, I just need space for pointers in my new cart. If you don't mind I will use addresses from $421, unless you are planning to use them in the future?
  12. Are you using only $420 or address is repeated up to $42F
  13. Nice to see another game using YM2151.
  14. For those who do not have the game Rikki&Vikki I attach ADPCM tester. You can check if there are any volume problems. ADPCMtest.zip
  15. I'm working on this to make pixel art people life easier. Also in MariaECI we are fixing 320 modes, maybe 7800GD will do this same.
  16. Just reminder that 7800GD support very good Souper mapper from Rikki ;******************************************************************************* ; SOUPER Mapper for the Atari 7800 ProSystem * ;******************************************************************************* ; - 512KB of ROM ; \- 16KB Paged Segment ; - 16KB Fixed Segment ; - 32KB of EXRAM ; \- Flat 16KB Mode ; - Segmented 8KB + 4KB + 4KB Mode ; - Maria Fetch Trapping ; - BupChip Expansion Audio * ;------------------------------------------------------------------------------- ;------------------------------------------------------------------------------- ; Memory Map (Sally) / ;------------------------------------------------------------------------------ ; Upon reset, SOUPER partitions Sally's view of memory as shown below... ; ; | $xx00 | $xx40 | $xx80 | $xxC0 ;--------------------------------------------------------------------------- ; $00xx - $3Fxx |........................................................... ;---------------|----------------------------------------------------------- ; $40xx - $7Fxx | EXRAM (16KB) ;---------------|----------------------------------------------------------- ; $80xx - $BFxx | Paged ROM (16KB, BANK_SEL) ; $C0xx - $FFxx | Fixed ROM (16KB, BANK_F_SEL / END) * ;--------------------------------------------------------------------------- ; ; This resembles a 512KB SUPER Cartridge with 16KB of EXRAM and is intended to ; simplify software migration. The 16KB EXRAM viewport from $4000 - $7FFF is ; fixed to the lower 16KB of SOUPER's full 32KB of EXRAM. ; ; The Fixed ROM segment from $C000 - $FFFF contains the last 16KB page ($1F) ; of the 512KB ROM, unless the mapper variant both supports and is currently ; in Flash ROM programming mode (see "Registers"). ; ; ; Setting MODE,2 (MODE_EXS) enables EXRAM Segmented Mode... ; ; | $xx00 | $xx40 | $xx80 | $xxC0 ;--------------------------------------------------------------------------- ; $00xx - $3Fxx |........................................................... ;---------------|----------------------------------------------------------- ; $40xx - $5Fxx | EXRAM (8KB) ; $60xx - $6Fxx | EXRAM (4KB, EXRAM_V_SEL) ; $70xx - $7Fxx | EXRAM (4KB, EXRAM_D_SEL) ;---------------|----------------------------------------------------------- ; $80xx - $BFxx | Paged ROM (16KB, BANK_SEL) ; $C0xx - $FFxx | Fixed ROM (16KB, BANK_F_SEL / END) * ;--------------------------------------------------------------------------- ; ; This allows access to all 32KB of EXRAM using two 4KB pages. The 8KB segment ; in $4000 - $5FFF is fixed to the first 8KB of SOUPER's full 32KB of EXRAM. ;--------------------------------------- EXRAM_BASE EQU $4000 EXRAM_SIZE EQU $4000 EXRAM_TOP EQU (EXRAM_BASE + EXRAM_SIZE) EXRAM_PAGES EQU 8 EXRAMV_BASE EQU $6000 EXRAMV_SIZE EQU $1000 EXRAMV_TOP EQU (EXRAMV_BASE + EXRAMV_SIZE) EXRAMD_BASE EQU $7000 EXRAMD_SIZE EQU $1000 EXRAMD_TOP EQU (EXRAMD_BASE + EXRAMD_SIZE) EXRAM_V_BASE EQU $6000 EXRAM_V_SIZE EQU $1000 EXRAM_V_TOP EQU (EXRAM_V_BASE + EXRAM_V_SIZE) EXRAM_D_BASE EQU $7000 EXRAM_D_SIZE EQU $1000 EXRAM_D_TOP EQU (EXRAM_D_BASE + EXRAM_D_SIZE) ROM_BASE EQU $8000 BANK_SIZE EQU $4000 BANK_SWAP EQU ROM_BASE BANK_FIXED EQU (ROM_BASE + BANK_SIZE) ;------------------------------------------------------------------------------- ; Memory Map (Maria) / ;------------------------------------------------------------------------------ ; Maria's view of memory is identical to Sally's until MODE,0 (MODE_MFT) is set, ; this enables Maria Fetch Trapping and repartitions her arrangement to... ; ; | $xx00 | $xx40 | $xx80 | $xxC0 ;--------------------------------------------------------------------------- ; $00xx - $3Fxx |........................................................... ;---------------|----------------------------------------------------------- ; $40xx - $7Fxx | EXRAM ;---------------|----------------------------------------------------------- ; $80xx - $BFxx | Paged ROM (16KB, BANK_SEL) ;---------------|----------------------------------------------------------- ; $C0xx - $FFxx | EXRAM ;--------------------------------------------------------------------------- ; ; The EXRAM segment from $C000 - $FFFF is identical to the one visible by Sally ; in $4000 - $7FFF, including whether paging is enabled (MODE_EXS). This allows ; Maria to use her Holey DMA feature while reading graphic data from EXRAM. ; ; ; Setting MODE,1 (MODE_CHR) will alter Maria's view further... ; ; | $xx00 | $xx40 | $xx80 | $xxC0 ;--------------------------------------------------------------------------- ; $00xx - $3Fxx |........................................................... ;---------------|----------------------------------------------------------- ; $40xx - $7Fxx | EXRAM ;---------------|----------------------------------------------------------- ; $80xx - $9Fxx | Fixed ROM ($C000 - $DFFF) ;---------------|----------------------------------------------------------- ; $A0xx - $AFxx | CHR_A | CHR_B ;---------------|----------------------------------------------------------- ; $C0xx - $FFxx | EXRAM ;--------------------------------------------------------------------------- ; ; The Fixed ROM segment from $8000 - $9FFF is identical to the lower 8KB of ; Fixed ROM visible to Sally in $C000 - $DFFF. This region is intended for ; static resources such as fonts or status bar graphics. ; ; The CHR_A and CHR_B regions automatically route Maria's fetches to different ; addresses within the cartridge's ROM. Two selects are given, which are chosen ; by the state of A7 within $A000 - $AFFF (CHR_A == '0', CHR_B == '1') enabling ; access to all 512KB of ROM through two 2KB pages. ; ; Any empty areas will respond to both Maria and Sally's fetches identically. ;--------------------------------------- CHR_A EQU $A000 CHR_B EQU $A080 VMEM8_BASE EQU $8000 VMEM16_BASE EQU $C000 ;------------------------------------------------------------------------------- ; Registers / ;------------------------------------------------------------------------------ ; SOUPER's registers are accessed by writing above $8000 - with an upper limit ; and feature set defined by the mapper variant... ; ; | ACTIVE RANGES | FLASH ROM SUPPORT ; ------------------------------------------- ; SOUPER | $8000 - $FFFF | NO ; SUBPAR | $8000 - $FFFF | NO ; SUBLET | $8000 - $BFFF | YES ; ------------------------------------------- ; ; Only the defined set from $8000 - $8007 should be used and undefined bits in ; all registers zeroed in order to ensure compatibility. ; ; Flash ROM support consists of a write signal (romWrite_n) along with three ; new registers (FLASH_UNLOCK, FLASH_PROTECT, BANK_F_SEL) which control both ; protection of the write signal and use of the fixed bank for programming. ; ; While SUBPAR does not contain Flash ROM support, it does have a romWrite_n ; pin which is stuck HIGH. This was intended to allow a single board layout to ; support both SUBPAR or SUBLET. ;--------------------------------------- BANK_SEL EQU $8000 ; -/W ; Paged ROM Bank Select (%xxxBBBBB) ; Select the 16KB ROM page visible in $8000 - $BFFF. CHR_A_SEL EQU $8001 CHR_B_SEL EQU $8002 ; -/W ; ROM Character 'A/B' Page Selects (%BBBBBBBS) ; ; 111 ; 210 FEDCBA98 76543210 ; ... ........ BBBBBBBS : CHR_A/B (!) ; ... 101xHHHH !LLLLLLL : ADDRESS ; BBB BBBBHHHH SLLLLLLL = ROM SOUPMODE_SEL EQU $8003 MODE_SEL EQU $8003 MODE_EXS EQU $04 MODE_CHR EQU $02 MODE_MFT EQU $01 ; -/W ; Operating Mode (%xxxxxECS, '1' == Enable) ; 7 - 3 : ??? ; 2 : EXRAM Segmented Memory (Paging Support) ; 1 : Character Remapping ; 0 : Maria Fetch Trapping EXRAMV_SEL EQU $8004 EXRAM_V_SEL EQU $8004 ; -/W ; EXRAM Video Page Select ; Select the 4KB EXRAM page visible in $6000 - $6FFF when MODE,2 is set. EXRAMD_SEL EQU $8005 EXRAM_D_SEL EQU $8005 ; -/W ; EXRAM Data Page Select ; Select the 4KB EXRAM page visible in $7000 - $7FFF when MODE,2 is set. AUDIO_CMD EQU $8007 ; -/W ; Audio Command ; Written value is sent to the BupChip. FLASH_UNLOCK EQU $8080 ; -/W ; Flash Write Unlock ; Writing the ASCII sequence "WR" ($57,$52) will unlock the flash for write ; access in $C000 - $FFFF and allow selecting a 16KB ROM page with BANK_F_SEL. FLASH_PROTECT EQU $8081 ; -/W ; Flash Write Protect ; Any value disables write access to the flash and sets BANK_F to $1F.
  17. Yes. I was confused and had to check my code Line 69, 126 need correction.
  18. "Fixed" transparency for hires modes in MariaECI for Atari XL/XE When bit 4 in DLL entry is ON then extended LineRam is used (two 160x5 bit - 1600 bits) @SainT any chance to do similar "fix" for Maria in GD7800 in the future? NewLineRAM.mp4
  19. Looks like @emkay has been banned on AAge, but you can try reach him on AOL https://atarionline.pl/forum/comments.php?DiscussionID=6972&page=3#Item_8
  20. Nice. Few months ago I tried conversion from nes to 320C mode Should look better if you will draw from the scratch
  21. You can get Rikki from here https://store.steampowered.com/app/893690/Rikki__Vikki/ then you need to convert with SainT tools
×
×
  • Create New...