▲

Pikuma - PS1 Programming with MIPS Assembly and C (2024)

seeders: 0
leechers: 0
Added 1 week ago by borut0 in Other

Download Fast Safe Anonymous
movies, software, shows...

Files

Pikuma - PS1 Programming with MIPS Assembly and C (2024) (Size: 8.4 GB)
  001. Starting our Journey.mp4 101.9 MB
  002. How to Take this Course.mp4 4.3 MB
  003. Placing the PlayStation in History.mp4 90.9 MB
  004. PS1 Hardware Overview.mp4 94.3 MB
  005. The MIPS CPU.mp4 43.1 MB
  006. Memory & Endianness.mp4 31 MB
  007. Memory Map.mp4 30.7 MB
  008. CPU Registers & Load Instructions.mp4 81.3 MB
  009. Store, Add, & Subtract Instructions.mp4 42.2 MB
  010. Jump & Branch Instructions.mp4 35.1 MB
  011. Exercise Our First MIPS Code.mp4 18.4 MB
  012. Going Over Our First MIPS Code.mp4 26.3 MB
  013. Installing the ARMIPS Assembler.mp4 34.7 MB
  014. Assembling our MIPS Code.mp4 7.4 MB
  015. PSX-EXE File Format.mp4 11.6 MB
  016. Emulator & Step-By-Step Execution.mp4 33 MB
  017. Fixing Off-By-One Error.mp4 10.3 MB
  018. Pseudo-Instructions.mp4 34.2 MB
  019. The MIPS Pipeline.mp4 66.2 MB
  020. Some Warm Up Exercises.mp4 17.4 MB
  021. Solving our Warm Up Exercises.mp4 43.2 MB
  022. Register Shorthand.mp4 23 MB
  023. Factorial Exercise.mp4 24.6 MB
  024. Solving our Factorial Exercise.mp4 40.6 MB
  025. Factorial Subroutine.mp4 40 MB
  026. Negative Numbers.mp4 40.8 MB
  027. Sign Extension.mp4 29.9 MB
  028. Logical Instructions.mp4 28.3 MB
  029. Bitshifting Instructions.mp4 32.1 MB
  030. Examples of CISC & RISC Machines.mp4 38.7 MB
  031. CISC vs RISC Instructions.mp4 82 MB
  032. The PlayStation Graphics System.mp4 77.4 MB
  033. Drawing Primitives.mp4 36.2 MB
  034. GPU Packets.mp4 66.2 MB
  035. Sending Display Control Packets to GP1.mp4 81.5 MB
  036. Sending VRAM Access Packets to GP0.mp4 33.2 MB
  037. Clear Display Area.mp4 26.9 MB
  038. Drawing a Flat-Shaded Triangle.mp4 18.3 MB
  039. Drawing a Flat-Shaded Quad.mp4 11.8 MB
  040. Drawing a Gouraud-Shaded Triangle.mp4 9.2 MB
  041. Flat-Shaded Triangle Subroutine.mp4 49.4 MB
  042. Coding our Flat Triangle Subroutine.mp4 19.8 MB
  043. Stack & Stack Pointer.mp4 42.5 MB
  044. Stack Parameters.mp4 24.5 MB
  045. Stack & Heap Space.mp4 39.4 MB
  046. Variables.mp4 43.2 MB
  047. Variable Alignment.mp4 20.1 MB
  048. Vector Alignment.mp4 62.6 MB
  049. Copying Image Data to VRAM.mp4 103.4 MB
  050. Using Bitshifting to Multiply & Divide.mp4 33 MB
  051. 24BPP Display Mode.mp4 59.1 MB
  052. Taking Advantage of our Delay Slots.mp4 28.8 MB
  053. Moving from MIPS Assembly to C.mp4 25.9 MB
  054. Installing Tools on Windows 11.mp4 46.5 MB
  055. Installing Tools on Windows XP.mp4 66.8 MB
  056. Compiling a Simple Psy-Q Project.mp4 34 MB
  057. Double-Buffer Screen.mp4 99 MB
  058. Psy-Q Integer Data Types.mp4 14.2 MB
  059. Psy-Q Primitive Types.mp4 23.8 MB
  060. Ordering Table & Primitive Buffer.mp4 61.8 MB
  061. Sorting Primitives into the OT.mp4 47.9 MB
  062. Sorting a Gouraud Quad into the OT.mp4 25.1 MB
  063. A Review of Pointers.mp4 64.5 MB
  064. The Arrow Operator.mp4 56.5 MB
  065. A Review of 3D Projection.mp4 68.9 MB
  066. Vertices & Face Indices.mp4 52.6 MB
  067. The Geometry Transformation Engine.mp4 19.9 MB
  068. Basic 3D Transformations.mp4 45.9 MB
  069. RotTransPers Function.mp4 70.4 MB
  070. Coding a Rotating 3D Cube.mp4 55 MB
  071. Normal Clip.mp4 26.1 MB
  072. Coding Quads as Cube Faces.mp4 12.6 MB
  073. Reviewing Floating-Point Numbers.mp4 51.3 MB
  074. Fixed-Point Numbers.mp4 48.5 MB
  075. Implementing a Bouncing Cube.mp4 52.1 MB
  076. Different Transform Matrix per Object.mp4 60.7 MB
  077. Wait, Can I use Floats.mp4 6.1 MB
  078. GTE Register Set.mp4 38.6 MB
  079. Inline GTE Instructions.mp4 62.9 MB
  080. RTPT vs. RTPS.mp4 34.4 MB
  081. Reading Joypad State.mp4 66 MB
  082. Joypad Input with BIOS Functions.mp4 79.9 MB
  083. Joypad Header & Implementation.mp4 90.4 MB
  084. Header File for OT & Primitive Buffer.mp4 79.7 MB
  085. Header File for Display Routines.mp4 25.8 MB
  086. Camera Space.mp4 54.8 MB
  087. The Look-At Transformation.mp4 73.9 MB
  088. The LookAt Function.mp4 66.7 MB
  089. Coding the Look-At Camera Model.mp4 83.6 MB
  090. CD-ROM Basics.mp4 65.2 MB
  091. Generating an ISO on Windows XP.mp4 47.1 MB
  092. Generating an ISO on Windows 11.mp4 32.7 MB
  093. A Function to Read Files from the CD.mp4 93.6 MB
  094. Understanding the MODEL.BIN File.mp4 23.9 MB
  095. Dynamically Allocating Buffers.mp4 49.8 MB
  096. Heap Initialization on Windows 11.mp4 24.7 MB
  097. Interpreting Bytes as Numbers.mp4 72.3 MB
  098. Handling Different Order of Bytes.mp4 47.1 MB
  099. Reading Vertices & Faces from a File.mp4 51.2 MB
  100. UV Coordinates, TPAGE, & CLUT.mp4 61.1 MB
  101. Installing TIM Tool.mp4 7.6 MB
  102. TIM File Format.mp4 25.9 MB
  103. Read TIM File from the CD.mp4 75.6 MB
  104. Textured Cube Faces.mp4 84 MB
  105. Wobbly Textures.mp4 100.2 MB
  106. Polygon Jitter.mp4 8.7 MB
  107. Dev Tools CD Samples.mp4 41.2 MB
  108. Intro to our Final Project.mp4 80.9 MB
  109. Importing Project Assets.mp4 9.2 MB
  110. PRM File Layout.mp4 49 MB
  111. Reading Object Name from PRM File.mp4 55.2 MB
  112. Reading Vertices from PRM File.mp4 41.3 MB
  113. Handling Different Primitive Types.mp4 103 MB
  114. Reading Primitives from PRM File.mp4 58.3 MB
  115. Drawing Flat-Shaded Object Faces.mp4 103.8 MB
  116. Using sizeof with Variable Name.mp4 11.5 MB
  117. CMP File Layout.mp4 68.7 MB
  118. Reading Number of Textures from File.mp4 29.7 MB
  119. Reading TIM Sizes from File.mp4 60.1 MB
  120. A Function to Extract LZSS Data.mp4 33.6 MB
  121. Texture Structs.mp4 47.3 MB
  122. Uploading CMP Textures to VRAM.mp4 63 MB
  123. Global Texture Store Array.mp4 75.4 MB
  124. Rendering Textured Triangles.mp4 24.1 MB
  125. Visualizing Textured 3D Objects.mp4 40.5 MB
  126. Loading Multiple CMP Files.mp4 59.5 MB
  127. Exercise Linked List of Objects.mp4 29.7 MB
  128. Linked List Implementation.mp4 61.5 MB
  129. Joypad Press & Release.mp4 9 MB
  130. Reading Scene Objects from CD.mp4 98.4 MB
  131. Camera-Object Distance Check.mp4 41.1 MB
  132. Drawing Scene Objects.mp4 52 MB
  133. Track Sections & Faces.mp4 66.2 MB
  134. Structs for Sessions & Faces.mp4 23.5 MB
  135. Reading Vertices, Faces, & Sections.mp4 73.8 MB
  136. Function to Render Track Sections.mp4 96.5 MB
  137. Shrinking Track Vertices.mp4 92.2 MB
  138. Exercise Testing Face Flags.mp4 26.4 MB
  139. Drawing Quad Lines.mp4 28.2 MB
  140. Avoiding the GTE 16-bit Limitation.mp4 67 MB
  141. Clamping Overflow Values.mp4 75.8 MB
  142. Loading Track Texture Tiles.mp4 101.8 MB
  143. Manually Position Textures in VRAM.mp4 80.1 MB
  144. Loading Track Face UV Coords.mp4 46.2 MB
  145. Flip Face Texture.mp4 25.2 MB
  146. Tessellation & Polygon Subdivision.mp4 108.7 MB
  147. Drawing Quads Recursively.mp4 37.9 MB
  148. A Function to Draw Quads Recursively.mp4 75.9 MB
  149. Subdividing UV Coordinates.mp4 49 MB
  150. T-junctions.mp4 126.2 MB
  PS1 Programming with MIPS Assembly & C.txt 4 KB
  code.zip 1.1 GB
  ▲ 152 total files

Description


Source: https://pikuma.com/courses/ps1-programming-mips-assembly-language

What you'll learn:
This course is a deep dive into the world of PlayStation programming! We'll explore the PS1 hardware, understand its sub-components, and learn how to code games using MIPS assembler & the C programming language. We'll also learn how to use a PS1 SDK library paired with a modern development toolchain to be more productive and push fast polygons out of our console.
We are about to enter the 5th generation of 32-bit consoles. This era brings with it many technology milestones, such as the adoption of CPUs based on RISC architecture and a preference for coding using a high-level language instead of writing games using plain assembly. We will start by learning the basics of MIPS assembly and evolve to use a C compiler with a PS1 SDK to develop our final project.

--------------

Mediainfo
Video

ID : 1

Format : AVC

Format/Info : Advanced Video Codec

Format profile : [email protected]

Format settings : CABAC / 4 Ref frames

Format settings, CABAC : Yes

Format settings, Reference frames : 4 frames

Codec ID : avc1

Codec ID/Info : Advanced Video Coding

Duration : 12 min 18 s

Bit rate : 1 016 kb/s

Width : 1 920 pixels

Height : 1 080 pixels

Display aspect ratio : 16:9

frame rate mode : Constant

frame rate : 59.940 (60000/1001) FPS

Color space : YUV

Chroma subsampling : 4:2:0

Bit depth : 8 bits

Scan type : Progressive

Bits/(Pixel*frame) : 0.008

Stream size : 89.5 MiB (88%)

Writing library : x264 core 164

Encoding settings : cabac=1 / ref=3 / deblock=1:0:0 / analyse=0x3:0x113 / me=hex / subme=7 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=34 / lookahead_threads=5 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=2 / keyint=250 / keyint_min=25 / scenecut=40 / intra_refresh=0 / rc_lookahead=40 / rc=crf / mbtree=1 / crf=26.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / ip_ratio=1.40 / aq=1:1.00

Color range : Limited

Color primaries : BT.709

Transfer characteristics : BT.709

Matrix coefficients : BT.709

Codec configuration box : avcC
Audio

ID : 2

Format : AAC LC

Format/Info : Advanced Audio Codec Low Complexity

Codec ID : mp4a-40-2

Duration : 12 min 18 s

Source duration : 12 min 18 s

Bit rate mode : Constant

Bit rate : 128 kb/s

Channel(s) : 2 channels

Channel layout : L R

Sampling rate : 44.1 kHz

frame rate : 43.066 FPS (1024 SPF)

Compression mode : Lossy

Stream size : 11.3 MiB (11%)

Source stream size : 11.3 MiB (11%)

Default : Yes

Alternate group : 1