Jump to content

Optimus

Members
  • Posts

    8
  • Joined

  • Last visited

Optimus's Achievements

Combat Commando

Combat Commando (1/9)

2

Reputation

  1. Yeah, I thoroughly checked the code and that's what it seems to be doing.
  2. Ok, I guess I could try formatting the card from windows. I did this actually once, but I think windows doesn't do it right. Maybe I'll use some other windows tools that does it better?
  3. I gotta then check the code to see what's going on. From some coding folks I get that still it's not a raycaster, they just find which wall segments are visible through BSP and project the walls/colums on the screen, but not mention raycasting. This code review explains some stuff but not mention raycasting at all. At some point it says "Visible SEGS are projected on screen via a lookup table and clipped via an occlusion array." I think I will study more this site (if I have time) and maybe look at the code for any signs.
  4. Just one question: is the Ultimate XEX loader different loader than the cart loader? Long before I had the U1MB, I only had the cart and could go to the loader to load XEX. Then I upgraded with the U1MB. Is there a different loader for this? It's the one where you press L to get into? (but doesn't find FAT32 device right now) So, yeah I am stuck at the moment. I need the self-contained XEX flasher. Maybe I should have bought the SIO2SD. I bet it loads ATR and XEX straightforward.
  5. Ok, the only thing I need to proceed is to flash the ROM. What I have here is: Download SpartaDOS X 4.46 with MyIDE2 Driver v.3.2 It has an ATR file which I cannot of course use. And it has a ROM file which I should flash. Secondly, there is also: http://atari8.co.uk/uflash/uflash_1.2_test1.zip Fortunately this is a XEX. This means I can run it from SIDE loader. But there is a problem. This has to be able to see the ROM file. I can put both XEX and ROM in the CF card. But when I run the XEX, it's loaded and ran into memory, but does not look at the other files. I tried this last time with another XEX coming with ROM file, and it couldn't read the ROM file because the CF card is not seen as a disk drive. I read the APT documentation and see that I can use FDISK and other commands to do my work. But I am not there, because every previous step needed (to flash rom, to upgrade something, anything so that I can finally use these disk tools) always comes with an ATR and a ROM file. Or a XEX that will need to select a ROM file (I don't think putting the XEX and the ROM in same directory on card and then run the XEX from loader will make it see the ROM file, last time it couldn't since there is no visible file system for the XEX I think). Never a XEX that include in it's binary data the ROM. So what do I miss?
  6. I was fighting with this long time ago. Then I thought maybe I need Ultimate 1MB for some reason (maybe there is ramdisk to load the ATR or something). Anyway, now I have SIDE2 and U1MB in my Atari 65XE. I've read many documents. I know I should press L to load ATR. But in all these cases I get message implying there is no FAT32 partition, or no PBI or no APT device. What I understood is that somehow I have to run fdisk to make partition. I have read docs and seen videos. Yesterday I managed to extract FDISK.XEX from an ATR with these utils. It starts but then it says "Can't find APT device" I also installed a thing called PBI. I am not exactly sure what PBI or APT means. I need a mental map to understand what I am dealing with. But I know I have to somehow make it possible to see the cart as a disk or something. But nothing works. Also, in the docs it's implied that FDISK and other tools are loaded by default in the cart. But FDISK is not there. I am in SpartaDos, at D1:. I thought maybe I should write CAR: and nothing happens but shows me again at D1: Is CAR: some storage in the cartidge that holds those tools? There are video tutorials someone writing fdisk and running the thing. But I get an 138 device error. Of course I tried the other solution, extracting the FDISK.XEX and running it trhough the SIDE loader. There is more. I somehow manage to install a PBI driver 1.0, so I get the message when I boot to spartados that PBI is loaded. Don't know if this changes something. But now I have hard time to get into the loader. Unless I disable SIDE2 in the setup menu (with Help+Reset). But I don't understand the logic. I thought SIDE2 was that loader. So, I get into the LOADER by disabling the hardware. And if I enable it w/o button (what does this mean?) now it always boots in spartados no matter what. Before that, I had to Turn Off/On the atari from the switch, to boot to LOADER, even with SIDE hardware enabled. A reset would later get me to DOS but not loader. I don't understand, it's a bit convoluted. But now it's worse. I'd like to understand the logic. Maybe though I am failing, because besides that there is something wrong with the CART. Maybe not.
  7. I wanna add that technically Doom is not a raycaster. It's not true 3D either. But the term raycaster is about casting rays and see if it hits walls. Wolfenstein was a raycaster. Both Wolfenstein and Doom rendered walls by drawing stretched vertical columns. But Wolfenstein determined what columns to render with what stretch with raycasting. Doom determined which wall sections were visible with BSP trees. Fun surprising fact, the SNES version of Wolfenstein is based on BSP trees, because raycasting was too slow for it. I heard on the video where Carmack plays Wolfenstein and comments on it. Anyway, this makes both AVP and Doom not able to have true 3d maps with stacks of floors one above the other (even though you can fake it with teleporters like in Duke Nukem 3D, which uses portals instead of BSPs) But AVP to me looks like wolfenstein 90 degrees walls. And Doom has much more interesting 3d spaces and diverse textures. I definitely found the Doom engine quite impressed on my Jaguar. I see now it's more lowres (it's like the F5 low detail mode from PC) which I didn't noticed in my noisy TV set up. But still it really impresses me. It might not be real 3d, but at the end it's another clever way to render 3d worlds and it might even look more fabulous than some true polygonal 3d games. Also because of the great level design. I haven't checked other real polygonal games though yet, besides Club Drive and Cybermorph. I missed the good ones so far (more expensive to get at ebay).
  8. I have coded in both Z80 and 6502 but my favorite is Z80, maybe because I am more familiar with it over the years. Yet, there are some things I loved with 6502 too. People say it doesn't have enough registers. Yes, but everything has to do with direct memory addreses, there is nothing similar to LD A,(HL). You have to use all the time LDA $nnnn:STA $nnnn. Or also with index numbers. Why this is interesting? First, we also have this thing on Z80, LD A,(&nnnn) or even LD HL,(&nnnn). But those are too costy on Z80 (maybe 16 to 20 cycles, while ld a,(hl) is only 7-8 cycles on CPC) and it's better to cleverly use LD A,(HL) or LDI or others. So, one thing I liked on 6502 (and that might be weird) was that pseudocode of good optimized routines was more obvious to read. You always used direct addresses which were nice labels. So, you do everything with direct addresses anyway (and have the zero page even), without caring if there is faster way to read/write memory, more simple, nicely readable. You'd have something like LDA Sine1,X ADC Sine2,Y STA Vram oh a plasma while Z80 ld b,(hl) ld a,(de) add b ld (ix),a inc ix just an example, you can't see, you have to remember regs. 6502, simpler, easier to understand code if they use good labels. Another thing that's nice on 6502 is it doesn't have OUT, so always you have direct mapping of hardware I/O. OUT are tedious and weird on Z80. And of course the simple fact, similar opcodes take less time. 6502 at 2Mhz could be like Z80 at 4mhz, depending on what you do. However, one thing that is interesting on Z80, I think the 16bit registers are much better for some fixed point math for 3d. Even if I have seen very good 3d on C64 that we never did on CPC, I believe that proper programming of good engine would be faster on Z80 computer. Other things I like on Z80, extended registers (with EXX for example), really really useful. IX/IY are sometimes useful when you don't have registers left, even if more cycles. I like that you can move the stack everywhere, for example pointing it to videoram and use PUSH for faster single color filling of the screen. LDI/LDIR are nice too sometimes. And there is one single thing I like. Because Z80 is more complicated than 6502, you need more time to master it. There are many ways you can think of optimizing, so you could fill vram with just ld (hl),a or use series of many ldis, or do the push trick, and even more depending what you want to do. And fiddlign of regs, which while confusing on a listing, they are a bliss if you master it and always gain a cycle/free reg here and there. So, there are more unique ways to optimize code, maybe because I think my best code optimizations in z80 I love it.
×
×
  • Create New...